--2:动态拼接行转列
DECLARE @sql VARCHAR(8000)
SET @sql = 'SELECT CompanyID,'
SELECT @sql = @sql + 'SUM(CASE Name WHEN '''+[Name]+''' THEN [TypeID] ELSE 0 END) AS '''+QUOTENAME(Name)+''','
FROM (SELECT DISTINCT Name FROM [dbo].[BD_Warehouse]) AS a
SELECT @sql = LEFT(@sql,LEN(@sql)-1) + ' FROM [dbo].[BD_Warehouse] GROUP BY CompanyID'
PRINT(@sql)
EXEC(@sql)
GO
相关文章
- 11-04SQL在数据处理过程中,遇到除数为0该怎么办?
- 11-04SQL语句将两个select语句查询结果合并一个
- 11-04从"UDF不应有状态" 切入来剖析Flink SQL代码生成
- 11-0450行代码手写原生js轮播图
- 11-04layerui 页面定位和行定位
- 11-04SQL 无法解决 EQUAL TO 运算中 "CHINESE_PRC_CI_AS" 和 "CHINESE_PRC_90_CI_AI" 之间的排序规则冲突
- 11-04sql中,In和where的区别
- 11-04【入门推荐】SQL注入进行WebShell渗透测试的基础概览
- 11-04SQL篇 语句练习 难度(中等)
- 11-042020-2021 北森智鼎行测题库解题思路