我必须通过“销售人员”列将两个具有不同列集的表组合起来。 到目前为止,我得到的查询的问题是一些销售人员的姓名重复,而右表中的一些姓名丢失。
交易表
salesperson, Profit, Units
John 100 1
John 50 1
Carl 200 2
Matt 300 3
连接表
salesperson, Amount
Carl 100
Lynda 200
Lucy 300
组合表
salesperson, (Amount+Profit), Units(sum)
Carl 300 2
John 150 2
Matt 300 3
Lynda 200 0
Lucy 300 0
这就是我目前所得到的
SELECT t.salesperson, SUM(t.profit) + SUM(c.amount), SUM(t.units)
FROM transactions AS t
FULL OUTER JOIN connections as c ON t.salesperson = c.salesperson
GROUP BY t.salesperson
ORDER BY t.salesperson ASC
如有任何帮助,我们将不胜感激。
最佳答案
SELECT salesperson, SUM(total), SUM(Units)
FROM
(
SELECT salesperson, Amount as total, Units
FROM Transactions
UNION ALL
SELECT salesperson, Profit as total, 0 as Units
FROM Connections
) T
GROUP BY salesperson
关于mysql - 在 MYSQL 中合并两个不同表的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33848927/