SQL行列转换

SQL行列转换,第1张

是个公司采购表,想转化成如下报表,显示每个公司各采购了些什么产品:

sql语句》答案:

1 declare @sql varchar(8000)--声明一个字符串变量
2 set @sql='select CompanyName,'--开始设置语句
3 --------动态生成语句begin(开始转成列)-----
4 select @sql=@sql'sum(case when ProductName='''ProductName''' then num else 0 end)['ProductName'],'
5 from (select distinct top 100 percent ProductName from Orders order by ProductName)a
6 --------动态生成语句 end--------------------
7 set @sql =left(@sql,len(@sql)-1)' from (select CompanyName,ProductName,COUNT(*)as num

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/2089789.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-07-22
下一篇 2022-07-22

发表评论

登录后才能评论

评论列表(0条)

保存