把結果反轉 OVER 一下
在上一題中,你的查詢所產生的名次是由小到大排列。只要在視窗函式中加上 DESC,就能把名次改為由大到小排序。
SELECT
id,
RANK() OVER(ORDER BY home_goal DESC) AS rank
FROM match;
本練習屬於課程
SQL 資料操作
練習說明
- 從
league與match中選出聯賽的name,以及「總進球數的平均值」。 - 完成視窗函式,將各聯賽依「平均進球數」由「高到低」排名。
- 將主查詢依你剛「建立」的名次來
ORDER BY。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
SELECT
-- Select the league name and average goals scored
___ AS league,
___(___ + m.away_goal) AS avg_goals,
-- Rank leagues in descending order by average goals
___ ___(___ ___ ___(___ + m.away_goal) ___) AS league_rank
FROM league AS l
LEFT JOIN match AS m
ON l.id = m.country_id
WHERE m.season = '2011/2012'
GROUP BY l.name
-- Order the query by the rank you created
___ ___ ___;