按SQL分组(或者如果值在另一个表上)

时间:2017-12-27 22:15:43

标签: mysql sql

我有一张比赛结果表,并获得积分。我想为每个玩家发布点数的SUM和点DESC的ORDER BY SUM。

要做到这一点,我需要获得所有结果,然后按LVID分组。问题是玩家LVID在表A或表B上。

这就是我的代码现在的样子:

SELECT p1.id, p2.id, SUM(tr.points)
                FROM tournament_results tr
                JOIN entries e ON tr.e_id = e.al_id
                JOIN tournaments t ON tr.tournament_id = t.id
                LEFT JOIN players_lv p1 ON e.player1_lvid = p1.id
                LEFT JOIN players_lv p2 ON e.player2_lvid = p2.id
                WHERE t.date_added < '2018-01-01' AND player1_lvid IS NOT NULL AND t.date < '2018-01-01'
                GROUP BY p1.id

现在,我只是按p1.id分组。但实际上,我需要订购player1_lvid = ... OR player2_lvid。但最终的结果不仅仅是一排,而是所有球员。 (最终显示排名)

0 个答案:

没有答案