SQL函數 ROW_NUMBER
ROW_NUMBER() OVER ( [ <partition_by_clause> ] <order_by_clause> )
<order_by_clause>決定將 ROW_NUMBER 值指派給資料分割中之資料列的順序。如需詳細資訊, 請參閱<ORDER BY 子句 (Transact-SQL)>。 在排名函數中使用 <order_by_clause> 時,整數無法表示資料行。
傳回類型
bigint
備註
ORDER BY 子句決定了在指定資料分割內,將唯一 ROW_NUMBER 指派給資料列的順序。
詳細說明請參閱MSDN
傳回結果集資料分割內某資料列的序號,序號從 1 開始,每個資料分割第一個資料列的序。(說白話一點就是說幫每個查尋回來的資料列給予自動編號) 例如 :
select row_number() over (order by fieldname asc) number,fieldname from tablename
引數
<partition_by_clause>將 FROM 子句所產生的結果集分成套用 ROW_NUMBER 函數的資料分割。
如需 PARTITION BY 語法,請參閱<OVER 子句 (Transact-SQL)>。<order_by_clause>決定將 ROW_NUMBER 值指派給資料分割中之資料列的順序。如需詳細資訊, 請參閱<ORDER BY 子句 (Transact-SQL)>。 在排名函數中使用 <order_by_clause> 時,整數無法表示資料行。
傳回類型
bigint
備註
ORDER BY 子句決定了在指定資料分割內,將唯一 ROW_NUMBER 指派給資料列的順序。
詳細說明請參閱MSDN
留言
張貼留言
您好,我是 Lawrence,這裡是我的開發筆記的網誌,如果你對我的文章有任何疑問或者有錯誤的話,歡迎留言讓我知道。