left join 重复计算
原始表如下:需要的关键字段有两个:订单编号、物料编码,下面三张表是不同统计口径,po:销售订单 ck:销售出库单 fp:销售发票。select t1.po,t1,pn,sum(t1.qty)poqty,sum(t2.qty)ckqty,sum(t3.qty)fpqty from po t1 left join ck t2 on t1.po =t2.po and t1.pn =t2.pn left join fp t3 on t1.po =t3.po and t1.pn =t3.pn
上面这个代码计算出来的结果为:
po pn poqty ckqty fpqty
FH201403-001 A01.32.001070 920 344 320
这个结果很明显错误,正确的应该如下:
po pn poqty ckqty fpqty
FH201403-001 A01.32.001070 184 184 160
请问有木有具体解决方法,谢谢。
*下面是三张表。
po
po pn qty
FH201403-001 A01.32.001070 184
ck
po pn qty
FH201403-001 A01.32.001070 32
FH201403-001 A01.32.001070 128
FH201403-001 A01.32.001070 24
fp
po pn qty
FH201403-001 A01.32.001070 32
FH201403-001 A01.32.001070 128