简体   繁体   English

SQL Server中的行号和分区依据

[英]Row_number & Partition By in SQL Server

I am stuck with the row number over one column group by another column. 我被一个列组的另一列的行号所困扰。

This is my data set 这是我的数据集

PR_Cmd      PR_Expd
--------------------------
CVP909104   LVP1ET03904305      
CVP909105   LVP1ET03904306      
CVP909105   LVP1ET03904306      
CVP909105   LVP1ET03904306      
CVP909105   LVP1ET03904306      
CVP909105   LVP1ET03904306      
CVP909105   LVP1ET03904307      
CVP909106   LVP1ET03904308      

What I want to get : 我想要得到的是:

PR_Cmd      PR_Expd             Expd_Number
-------------------------------------------
CVP909104   LVP1ET03904305      1
CVP909105   LVP1ET03904306      1
CVP909105   LVP1ET03904306      1
CVP909105   LVP1ET03904306      2
CVP909105   LVP1ET03904307      3
CVP909106   LVP1ET03904308      1

What you seem to want is dense_rank() . 您似乎想要的是dense_rank()

dense_rank() over (partition by pr_cmd order by pr_expd)

This will restart the numbering for each value of pr_cmd . 这将重新为pr_cmd每个值编号。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM