基于字段数据的行号

时间:2012-03-23 19:50:33

标签: sql sql-server

我有以下表格和数据

docRefID docExternalContent
 1       'a'
 1       'b'
 1       'c'
 2       'd'
 2       'e'

我想知道查询是否可能会根据docRefID插入额外的colum rowNumber和自动增量,例如

docRefID docExternalContent rowNumber
 1       'a'                1  
 1       'b'                2 
 1       'c'                3
 2       'd'                1
 2       'e'                2

等等....我尝试使用ROW_NUMBER()OVER,但它的工作独立于docRefID。

任何帮助都会被批评。感谢

3 个答案:

答案 0 :(得分:3)

  

我尝试使用ROW_NUMBER()OVER,但它的工作独立于docRefID。

试试这个:

 ROW_NUMBER() OVER (PARTITION BY docRefID ORDER BY docExternalContent)

答案 1 :(得分:2)

ROW_NUMBER() OVER(PARTITION BY docRefID ORDER BY docExternalContent)

答案 2 :(得分:1)

select  row_number() over (partition by docRefId order by docExternalContent) as rn
,       *
from    YourTable