首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL SERVER 汇总有关问题

2012-06-10 
SQL SERVER 汇总问题SQL codeSELECT 部门CASEWHEN GROUPING(部门)1 THEN 总计WHEN GROUPING(炉号)1 A

SQL SERVER 汇总问题

SQL code
SELECT 部门=CASE         WHEN GROUPING(部门)=1 THEN '总计'        WHEN GROUPING(炉号)=1 AND GROUPING(物料名称)=1 and grouping(日期)=1 THEN '部门合计'        ELSE 部门 END,    炉号=CASE          WHEN GROUPING(物料名称)=1 AND grouping(日期)=1 and GROUPING(炉号)=0 THEN ' 小计'        WHEN GROUPING(物料名称)=1 AND grouping(日期)=1 and GROUPING(炉号)=1 THEN ''        ELSE 炉号 END,         物料名称=CASE        WHEN GROUPING(物料名称)=0 THEN 物料名称        ELSE '' END,日期,sum(总数) as 总数,FROM #data2 GROUP BY 部门,炉号,物料名称,日期 WITH rollup

以车间和炉号分别作小计,最后以车间合计 需要显示日期 ,如果在上面的日期相关的代码段都删掉就是正确的。我现在想加入日期字段就总是 会有重复的行,怎么写好呢??



[解决办法]
select ...,max(日期) 日期,...
from ...
group by .... 这里把日期去掉

热点排行