34,590
社区成员
发帖
与我相关
我的任务
分享
DECLARE @SQL VARCHAR(MAX)
SET @SQL='SELECT ROW_NUMBER()OVER(ORDER BY No)RN,* FROM(SELECT No'
SELECT @SQL=@SQL+',ISNULL(SUM(CASE WHEN item='''+item+'''THEN price END),0)['+item+']'
FROM TB
GROUP BY item
SET @SQL=@SQL+',ISNULL(SUM(price),0)[合计]'
SET @SQL=@SQL+'FROM TB GROUP BY No)T'
EXEC(@SQL)
DECLARE @SQL VARCHAR(MAX)
SET @SQL='SELECT ROW_NUMBER()OVER(ORDER BY item)RN,item'
SELECT @SQL=@SQL+',SUM(CASE WHEN item='''+item+'''THEN price ELSE 0 END)['+item+']'
FROM TB
GROUP BY item
SET @SQL=@SQL+'FROM TB GROUP BY item'
EXEC(@SQL)
TB换成你的表