表 A 销售记录 ID 客户名称 销售金额
1 张三 2
2 张三 2
3 张三 2
4 李四 5
5 李四 6
6 王五 7表 B 收款记录
ID 客户名称 收款金额
1 张三 6
2 张三 4
3 李四 2
4 李四 5为什么 下面的语句得出来的结果不对的?
SELECT a.客户名称, SUM(a.销售金额) AS 销售金额, SUM(b.收款金额) AS 收款金额
FROM 销售记录 a LEFT OUTER JOIN
收款记录 b ON a.客户名称 = b.客户名称
GROUP BY a.客户名称结果是
客户名字 销售金额 收款金额
李四 22 14
王五 7
张三 12 30明显不对的.
1 张三 2
2 张三 2
3 张三 2
4 李四 5
5 李四 6
6 王五 7表 B 收款记录
ID 客户名称 收款金额
1 张三 6
2 张三 4
3 李四 2
4 李四 5为什么 下面的语句得出来的结果不对的?
SELECT a.客户名称, SUM(a.销售金额) AS 销售金额, SUM(b.收款金额) AS 收款金额
FROM 销售记录 a LEFT OUTER JOIN
收款记录 b ON a.客户名称 = b.客户名称
GROUP BY a.客户名称结果是
客户名字 销售金额 收款金额
李四 22 14
王五 7
张三 12 30明显不对的.
FROM 销售记录 a LEFT OUTER JOIN
收款记录 b ON a.客户名称 = b.客户名称
看看这个结果,你就明白为什么了
Sum(select 收款金额 from 收款记录 B where 客户名称 = a.客户名称)
FROM 销售记录 a GROUP BY a.客户名称
换这个试试
(select Sum(收款金额) from 收款记录 B where 客户名称 = a.客户名称)
FROM 销售记录 a GROUP BY a.客户名称
再改一下