我正在重新訪問SQL,因爲我開始了一個新項目。雙左加入SQL?
我有3個表(僅顯示有用的字段):
球員: ID
罰款 player_id,精細
Finelist ID,價格
我想爲每個球員獲得總罰金。我正在努力爲每筆罰款增加價格。
SELECT p.id, COUNT(f.player_id) FROM PLAYERS p LEFT JOIN FINES f ON (p.id=f.player_id) GROUP BY p.id
返回每個玩家罰款適量。現在我有不同的罰款和不同的價格。現在,我想添加那些我試了一下這樣的:
SELECT p.id, COUNT(f.player_id) * fl.price FROM PLAYERS p LEFT JOIN FINES f ON (p.id=f.player_id), FINELIST fl WHERE fl.id = f.fine GROUP BY p.id
現在只需要FINELIST的第一行考慮。只有FINES中有fine = 1
的行纔會被添加到COUNT。
我不知道我想要做什麼可能在一個查詢中,並希望得到一些幫助。
使用SUM()代替 –
也可能需要顯示示例數據 –