以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]查询不同子表的合计数重复 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=164205) |
-- 作者:chinaabs -- 发布时间:2021/4/29 14:57:00 -- [求助]查询不同子表的合计数重复 语句是 select 订单表.订单号,sum(单价*数量) as \'订单金额\',sum(收款金额)as \'已收合计\' fro m ({订单表} innerjoin {订单明细表} on {订单表}.订单号 = {订单明细表}.订单号) inner join {收款明细表} on {订单表}.订单号 = {收款明细表}.订单号 where {订单表}.订单号 = \'xxxx\' group by {订单表}.订单号 当一个订单有两条收款记录的时候,订单金额就会变成两倍,三条就是三倍。大概原因也明白,这个查询逻辑有问题,但不知道到怎样达到想要的效果。 请老师指点下思路
|
-- 作者:有点蓝 -- 发布时间:2021/4/29 15:57:00 -- select 订单表.订单号,订单金额,已收合计 from ({订单表} inner join (select 订单号,sum(单价*数量) as \'订单金额\' from {订单明细表} where 订单号 = \'xxxx\' group by 订单号) as a on {订单表}.订单号 = a.订单号) inner join (select 订单号,sum(收款金额)as \'已收合计\' from {收款明细表} where 订单号 = \'xxxx\' group by 订单号) as b on {订单表}.订单号 = b.订单号 where {订单表}.订单号 = \'xxxx\' |
-- 作者:chinaabs -- 发布时间:2021/4/29 17:24:00 -- 搞定,非常感谢 |