我做了關於自動遞增廣泛的研究發佈在此之前也沒有找到類似的例子:自動遞增GROUP BY後一個虛擬列,ORDER BY查詢
我有一個查詢從主要拉數據表格,按player_id分組,按desc排序,因此創建排名輸出。我的目標是完成相同的查詢,一旦它完成聚合和排序數據,創建一個新的列「Rank」並自動增加它,因此它顯示1,2,3等等,因爲一切都已經按玩家分組並且按點DESC排序。
謝謝你們。源表的
實施例:
player_id -----------點-----
--- 1 ---------- --------- 5 ----------
--- 1 ------------------- 10-- -------
--- 1 ------------------- 5 ---------
- -2 ------------------- 20 ---------
--- 2 5 ------------------- ---------
根據本示例希望的輸出:
排名 ------ player_id -------得分-----
---- ---------- 2 ----- ------ 25 POINTS ---------
---- ---------- 1 ----------- 20分---------
編輯
Rownum做得很好,不需要自動增加虛擬列!請參閱下面的Mutnowski接受的答案。
退房http://jimmod.com/blog/2008/09/displaying-row-number-rownum-in-mysql/它不是一個GROUPBY一個例子,但它應該讓你開始。我認爲你需要運行一個查詢得到你的結果沒有排名,然後運行另一個查詢,首先選擇所有並增加排名 – Murtnowski 2012-04-18 20:15:02