高手请帮忙,sql语句的问题?谢谢

sandrafei 2004-08-09 11:43:19
我想做分组小计,再总的合计
SELECT CASE WHEN (GROUPING(si_bill) = 1) THEN '合计'
ELSE ISNULL(si_bill, 'UNKNOWN')
END AS si_bill,
CASE WHEN (GROUPING(bar_code) = 1 AND GROUPING(si_bill) =0) THEN '小计'
WHEN (GROUPING(bar_code) = 1 AND GROUPING(si_bill) =1) THEN ''
ELSE bar_code
END AS bar_code,
SUM(store_in) AS 数量
FROM ab_sichild
GROUP BY toba_code,si_bill WITH ROLLUP
这样能得到我想要的结果,但是我加一个字段si_price,
SELECT CASE WHEN (GROUPING(si_bill) = 1) THEN '合计'
ELSE ISNULL(si_bill, 'UNKNOWN')
END AS si_bill,
CASE WHEN (GROUPING(bar_code) = 1 AND GROUPING(si_bill) =0) THEN '小计'
WHEN (GROUPING(bar_code) = 1 AND GROUPING(si_bill) =1) THEN ''
ELSE bar_code
END AS bar_code,
CASE WHEN (GROUPING(bar_code) = 1) THEN 0
ELSE ISNULL(si_price, 0)
END AS si_price,
SUM(store_in) AS 数量
FROM ab_sichild
GROUP BY toba_code,si_bill,si_price WITH ROLLUP
结果就变为应得到的结果集中每条记录重复一次,加两个字段,每条记录就重复两次,请问这该如何解决?
...全文
22 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧