将重复行与相应的活动堆相关联(第1行)

时间:2013-06-20 15:11:42

标签: sql sql-server

SQL Server:使用RowNo重复结果集

SourceID    FullName    RowNo   UniqueID
----------------------------------------------------------------
29757   NORBERT OVERWEG 1   29757

53736   NORBERT OVERWEG 2   NULL

47636   NORBERT OVERWEG 3   NULL

25685   NORBERT OVERWEG 4   NULL

53579   NORBERT OVERWEG 5   NULL

42301   NORBERT OVERWEG 6   NULL

49717   SECION CHAN 1   49717

51212   SECION CHAN 2   NULL

如何用第1行中的相应ID替换NULL?

预期结果:

SourceID    FullName    RowNo   UniqueID
-------------------------------------------------

29757   NORBERT OVERWEG 1   29757

53736   NORBERT OVERWEG 2   29757

47636   NORBERT OVERWEG 3   29757

25685   NORBERT OVERWEG 4   29757

53579   NORBERT OVERWEG 5   29757

42301   NORBERT OVERWEG 6   29757

49717   SECION CHAN 1   49717

51212   SECION CHAN 2   49717

1 个答案:

答案 0 :(得分:2)

这应该有所帮助:

UPDATE MyTable a
set UniqueID = 
    (select uniqueid from MyTable b
     where rowno = 1 and a.FullName = b.FullName)
where UniqueID is null