茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1735126 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
20081111210000b.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

DB研討會 : [轉貼]SQL Server 2005 - 如何讓 SELECT 查詢結果額外增加自動遞增序號

發表者 討論內容
冷日
(冷日)
Webmaster
  • 註冊日: 2008/2/19
  • 來自:
  • 發表數: 15773
[轉貼]為查詢的結果加上序號

[SQL]為查詢的結果加上序號(ROW_NUMBER,RANK,OVER)

在MS SQL2005以後,增加了一些幫查詢結果加上序號的函數

以下的範例使用北風(NorthWind)資料庫

介紹如下:

1.ROW_NUMBER

依照指定的欄位排序,並逐筆加上順號的方式

例如:



SELECT
ROW_NUMBER() OVER(ORDER BY CustomerID) AS ROWID
,*
FROM Orders

rn01

2.RANK

依照排序的欄位,相同的資料相同排名,下一個不同會【跳脫】



SELECT
RANK() OVER(ORDER BY CustomerID) AS ROWID
,*
FROM Orders

rn02

3.DENSE_RANK

依照排序的欄位,相同的資料相同排名,下一個不同會【不跳脫】



SELECT
--ROW_NUMBER() OVER(ORDER BY CustomerID) AS ROWID
--RANK() OVER(ORDER BY CustomerID) AS ROWID
DENSE_RANK() OVER(ORDER BY CustomerID) AS ROWID
,*
FROM Orders

rn03

小喵筆記一下以免忘記


原文出處: [SQL]為查詢的結果加上序號(ROW_NUMBER,RANK,OVER) - topcat 姍舞之間的極度凝聚- 點部落
前一個主題 | 下一個主題 | | | |

討論串




Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|