簡體   English   中英

SQL多順序按條件計數

[英]SQL Multi Order by Count with Criteria

我想從MotoGP Race結果查詢積分榜

我的sql是

SELECT `Rider`, `Team`, `Bike`,SUM(`Points`)
FROM `table_name` 
WHERE `Year` = 2015 AND `Classes` = "MotoGP"
GROUP BY `Year`,`Rider`
HAVING SUM(`Points`)
ORDER BY SUM(`Points`) DESC

如果2個或更多的騎手具有相同的SUM('Points'),則下一個順序是按第1個比賽位置的數量。 我將比賽位置放在“位置”字段上。

Pos值:1,2,3,4,5 ...

請幫助第二訂單。 謝謝

您只需要更改HAVING子句:

ORDER BY SUM(`Points`) DESC,
         SUM(RacePosition = 1) DESC

對於多個職位,我認為您需要為每個職位添加條件:

ORDER BY SUM(`Points`) DESC,
         SUM(RacePosition = 1) DESC,
         SUM(RacePosition = 2) DESC,
         SUM(RacePosition = 3) DESC

在某個時候,也許SUM(RacePosition)會做您想要的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM