簡體   English   中英

將訂單列添加到SQL Server的查詢結果中

[英]Add order column into query result in SQL Server

我有一個名為Table1 ,看起來像:

id|val1|val2|FKId
------------------
 1|val |val | 123
 2|val |val | 123
 3|val |val | 234
 4|val |val | 345

我正在使用:

SELECT * FROM Table1

我需要在此查詢的結果中添加一列,該列將包含FKId每行的訂單號。 我需要的結果如下所示:

id|val1|val2|FKId |Order
------------------------
 1|val |val | 123 | 1
 2|val |val | 123 | 1
 3|val |val | 234 | 2
 4|val |val | 345 | 3   

也許在SQL Server中有一些功能可以做到這一點?

使用排名功能Dense_Rank()您可以獲得所需的順序。 要了解有關Dense_rank更多信息, 請在此處檢查

SELECT *,
       Dense_Rank()
         OVER (
           PARTITiON BY val1
           ORDER BY fkid) [Order]
FROM   tablename 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM