这个合计用ROLLUP语句要怎么写
统计各个经营部,各种产品的销售量,used_info是销售表,包括 经营部、时间、项目、人员等字段,
use_dtl是明细表包括 产品、数量等字段
写了以下语句:
select a.bu as 经营部,a.pdate as 时间 ,
a.item as 项目, a.rec as 人员 ,
SUM(CASE b.product_name WHEN '产品1 ' THEN b.num END) [产品1] ,
SUM(CASE b.product_name WHEN '产品2 ' THEN b.num END) [产品2] ,
SUM(CASE b.product_name WHEN '产品3 ' THEN b.num END) [产品3] ,
from used_info a left join use_dtl b on a.used_id=b.used_id
group by a.bu ,a.pdate ,a.item ,a.rec
有以下结果:
经营部 时间 项目 人员 产品1 产品2 产品3
1 A经营部 2006-07-12 项目A 001 1 2 3
2 A经营部 2006-07-12 项目B 001 3 4 5
3 A经营部 2006-07-12 项目B 002 6 0 0
4 B经营部 2006-07-13 项目A 001 2 3 4
5 B经营部 2006-07-19 项目A 003 10 34 3
6 C经营部 2006-07-29 项目C 003 4 3 6
现在想在以上结果最后加上一行
合计 26 46 18
这个合计用GROUP BY .. WITH ROLLUP语句要怎么写??
------解决方案--------------------貌似只能用union all
------解决方案--------------------select
a.bu as 经营部, a.pdate as 时间, a.item as 项目, a.rec as 人员 ,
SUM(CASE b.produc