我有以下我的數據庫表的總和:如何計算關聯到不同用戶的銷售
Sales
-------------------------
id client account sale
1 X A2 400
2 X A2 300
3 X A1 100
4 X A1 200
Account Users
-------------------- -------------------------------------
accountid account id username first_name last_name
A1 Acc1 U1 abc Manish Goyal
A2 Acc2 U2 xyz Yogita Sharma
A3 Acc3 U3 jkl Nitish Malhotra
AccountUsers
------------------------
id accountid user
1 A1 U1
2 A1 U2
3 A1 U3
我想從被關聯到該帳戶和帳戶訪問銷售表中獲取銷售列的總和由Manish和Yogita用戶提供。
我寫了下面的SQL
SELECT SUM(Sales.sale) as total_sale, Account.account, Sales.client
FROM sales
INNER JOIN Account ON Sales.accountid = Account.accountid
INNER JOIN AccountUsers ON AccountUsers.accountid = Account.accountid
INNER JOIN Users ON Users.id = AccountUsers.user
WHERE ((trim(CONCAT(Users.first_name,' ',Users.last_name)) = 'Manish Goyal') OR (trim(CONCAT(Users.first_name,' ',Users.last_name)) = 'yogita sharma'))
我得到了以下結果:
client account total_sale
X Acc1 600
X Acc2 1400
不過,我希望得到以下結果:
Output
client account total_sale
X Acc1 300
X Acc2 700
的事情是,如果一個銷售與兩個賬戶的用戶相關聯,然後根據賬戶返回銷售。 我被困在那裏。 先謝謝了!...
我覺得 '馬尼什戈亞爾' 和 'yogita夏爾馬' 都得到300 total_sale因爲兩者的用途有AccountUsers表相同ACCOUNTID。 –
您需要某個GROUP BY子句 –
我將group by子句添加到sql查詢中,但不起作用 –