[SQL ] MySQL中紀錄的重複次數從最多到最少的排名
資料庫名稱: MySQL
資料庫版本: (略)
內容/問題描述:
假設資料表`table`中有欄位`country`
其中一部份`country`的紀錄包含:`United States`、`Japan`、`China`、`Germany`和`Taiwan`
我想要將這5個`country`的紀錄以「紀錄的重複次數多寡」來做排序
請問我該怎麼做?
--
我上網找了一下有關「MySQL的紀錄重複出現次數」的SQL語法如下:
SELECT country, count( * ) AS count
FROM table
GROUP BY country
ORDER BY count DESC
但是它是針對「全部的紀錄」來做排序,但是我只想要上面這5個資料的排序即可
請問我該怎麼做才會比較好、最準確且比較省主機效能?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.138.104.124
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1471833736.A.DCE.html
※ 編輯: red0whale (101.138.104.124), 08/22/2016 11:22:31
→
08/22 12:02, , 1F
08/22 12:02, 1F
謝謝
但我好像又遇到另外一個問題了:
先不要管前面那個問題,
如果說我今天拿這個「重複次數多寡」的排序來做為其他SQL語句的`ORDER BY`排序依據
我又該怎麼做?
因為就我所知的SQL語句裡的`ORDER BY`只有DESC和ASC這兩個排序功能
沒有其他的排法
所以這也是我頭疼的地方
故想問問該如何解決這另外一個問題
※ 編輯: red0whale (101.138.104.124), 08/22/2016 12:17:10
推
08/22 13:45, , 2F
08/22 13:45, 2F
推
08/23 16:02, , 3F
08/23 16:02, 3F
推
08/23 16:54, , 4F
08/23 16:54, 4F
→
08/23 16:55, , 5F
08/23 16:55, 5F
→
08/23 16:56, , 6F
08/23 16:56, 6F
→
08/23 16:56, , 7F
08/23 16:56, 7F
推
09/13 14:45, , 8F
09/13 14:45, 8F
→
09/13 14:45, , 9F
09/13 14:45, 9F
Database 近期熱門文章
PTT數位生活區 即時熱門文章