我有這兩個表
結合MySQL查詢SUM()結果使用內部聯接
table1 : date | uid | value_in
table2 : date | uid | value_out
每一天,每一個UID會收到一個平衡值,在國內外享有很高,不管交易/記錄的數量
我想要做的是查詢結果結合起來,是這樣
date | uid | value_in | value_out | (value_in-value_out) as balance
然而
,當我做這個查詢
SELECT
a.date,
a.uid,
SUM(a.value_in),
SUM(b.value_out),
(SUM(a.value_in)-SUM(b.value_out)) AS balance
FROM table1 a
INNER JOIN table2 b ON a.date=b.date AND a.uid=b.uid
GROUP BY a.date, a.uid
它產生無效的結果(SUM有兩倍或三倍) 我應該如何修改我的查詢,以便它不會產生加倍的結果?
哇,它的工作是什麼將導致。比INNER JOIN更好,更快,我需要學習這種查詢。謝謝 – skeith
@skeith:我添加了一些改進和修復。你可能想看看。 –
是的,再次感謝您提供的改進和修復,它超出我的預期,將從中學習(我發現它對我來說太高級了) – skeith