重复关联键的查询

求助重复关联键的查询

主数据如下,Invoice+ProductName可能重复,但是SerialNo不会重复
 重复关联键的查询


需要把SerialNo填到下面的表里面去,以Invoice+ProductName做关联,该表还有很多列,是张业务表
因为关联键重复,期望的结果是第二行填入s2,第三行填入s3,第四行填入s4
重复关联键的查询

求助如何实现,多谢!
------解决思路----------------------
SQL2005+有效
;WITH T1 AS(
SELECT *,ROW_NUMBER()OVER(PARTITION BY Invoice,ProductName ORDER BY RowId)RN FROM 主数据
)
,T2 AS(
SELECT *,ROW_NUMBER()OVER(PARTITION BY Invoice,ProductName ORDER BY RowId)RN FROM 业务表
)
UPDATE T2
SET SerialNo=T1.SerialNo
FROM T1 JOIN T2 ON T1.RN=T2.RN
AND T1.Invoice=T2.Invoice AND T1.ProductName=T2.ProductName