Name StockName Amount
---------------------------
John Product 1 40
John Product 2 20
Mary Product 1 10
Mary Product 2 50
Mary Product 3 9
我当前的记录如上所示。我要列出的内容如下:
Name Product 1 Product 2 Product 3
---------------------------------------
John 40 20 0
Mary 10 50 9
可以使用T-SQL查询吗?
只是因为我没有看到动态枢轴
例
Declare @SQL varchar(max) = '
Select *
From YourTable A
Pivot (sum([Amount]) For [StockName] in (' + Stuff((Select Distinct ','+QuoteName(StockName)
From YourTable A
Order By 1
For XML Path('')),1,1,'') + ') ) p'
--Print @SQL
Exec(@SQL)
退货
Name Product 1 Product 2 Product 3
John 40 20 NULL
Mary 10 50 9
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。