请问如何将SR和CB,按照BM和NY汇总成一行啊?字段+了SUM但是不行

image.png

image.png

FineReport rbk333 发布于 2022-7-12 10:44 (编辑于 2022-7-12 10:48)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
就TM你叫夏洛啊Lv6中级互助
发布于2022-7-12 10:51
SELECT  SUM(A.ZIFXAV015) AS SR ,SUM(A.ZIFXAC016) AS CB ,A.PROFIT_CTR AS BM ,A.CALMONTH AS NY FROM  "_SYS_BIC"."CB.AL.YW/ZAL_SALES_DETAIL"  A LEFT JOIN "_SYS_BIC"."CB.BL.YW/ZBL_ZDEFI002"  B ON A.PROFIT_CTR = B.PROFIT_CTR  AND A.CALMONTH = B.CALMONTH WHERE FISCPER NOT LIKE '%000' AND A.PROFIT_CTR='P8001' GROUP BY  A.PROFIT_CTR,A.CALMONTH

上面的sql你试试,group by 最好别加除BM 和NY多余的字段的了,不然会影响分组,还有你上面group by 里的A.ZIFXAV015和A.ZIFXAC016这两个千万不能加的,这个是汇总字段,汇总字段是不会出现在group by后面的,不然就不会汇总了

  • rbk333 rbk333(提问者) 结果显示是一条了, 但是ZIFXAV015和ZIFXAC016的值还是SR=2012566 , CB=29867.26。 只是显示这一条
    2022-07-12 10:56 
  • rbk333 rbk333(提问者) 是不是因为这个字段在数据库里本身就是汇总字段了 ()
    2022-07-12 11:01 
  • 就TM你叫夏洛啊 就TM你叫夏洛啊 回复 rbk333(提问者) 这个是汇总值啊,不对么,你要按什么分组汇总你就把字段加在group by 后面,只显示一条意思是A.ZIFXAV015和A.ZIFXAC016只有一条,按这两个字段分组的
    2022-07-12 11:05 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-7-12 10:46

没看懂~~

最佳回答
0
linbodingLv6中级互助
发布于2022-7-12 10:47

你把除了

SR、CB、BM、NY的其他列删了,再group by 试试看

  • rbk333 rbk333(提问者) 就变成一行了。 结果还是SR=2012566 , CB=29867.26
    2022-07-12 10:53 
  • linboding linboding 回复 rbk333(提问者) 这不对吗?如果你是想汇总没聚合的数据,那就在你的sql的基础上再嵌套一层,列还是那四列,然后数据sum()。group by 一下就可以了
    2022-07-12 11:23 
  • 3关注人数
  • 257浏览人数
  • 最后回答于:2022-7-12 10:51
    请选择关闭问题的原因
    确定 取消
    返回顶部