订单号码 产品编号 产品名称 生产制令单号 订单数量 单位 计划生产日期 计划生产数量
GW20191127 22108004 保护膜 PL191127003 3000 pcs 2019-12-20 1000
GW20191127 22108004 保护膜 PL191127003 3000 pcs 2019-12-21 1000
GW20191127 22108004 保护膜 PL191127003 3000 pcs 2019-12-22 1000
GW20191127 22030014 双面胶 PL191130008 2000 pcs 2019-12-20 1000
GW20191127 22030014 双面胶 PL191130008 2000 pcs 2019-12-23 1000
下面是我写的代码,但是执行后达不到我想要的效果,如果我将计划生产日期设置为日期型,就会报错
declare @sql varchar(8000)
set @sql = 'select 生产制令单号 '
select @sql = @sql + ' , max(case 计划生产日期 when ''' + 计划生产日期 + ''' then 计划生产数量 else 0 end) [' + 计划生产日期 + ']'
from (select distinct 计划生产日期 from 生产计划表) as a
set @sql = @sql + ' from 生产计划表 group by 生产制令单号'
set @sql='create view v_course as ' + @sql
print @sql exec(@sql)
go
SELECT * FROM V_COURSE