在MS SQL2005以後,增加了一些幫查詢結果加上序號的函數
以下的範例使用北風(NorthWind)資料庫
介紹如下:
1.ROW_NUMBER
依照指定的欄位排序,並逐筆加上順號的方式
例如:
1 | SELECT |
2 | ROW_NUMBER() OVER(ORDER BY CustomerID) AS ROWID |
3 | ,* |
4 | FROM Orders |
2.RANK
依照排序的欄位,相同的資料相同排名,下一個不同會【跳脫】
1 | SELECT |
2 | RANK() OVER(ORDER BY CustomerID) AS ROWID |
3 | ,* |
4 | FROM Orders |
3.DENSE_RANK
依照排序的欄位,相同的資料相同排名,下一個不同會【不跳脫】
1 | SELECT |
2 | --ROW_NUMBER() OVER(ORDER BY CustomerID) AS ROWID |
3 | --RANK() OVER(ORDER BY CustomerID) AS ROWID |
4 | DENSE_RANK() OVER(ORDER BY CustomerID) AS ROWID |
5 | ,* |
6 | FROM Orders |
轉貼自:topcat姍舞之間的極度凝聚