2015-07-19 32 views
-1

我需要你这种情况下帮助:SQL Server 2008的_组由+增量

(我SQL Server 2008上运行)

表:

IdProj  DocType  NumDoc 
00265  PC   1 
00265  PC   1 
00268  PC   1 
00268  PC   1 
00268  PC   1 
00268  PC   1 
00268  PC   1 
00370  PC   1 
00370  PC   1 
00370  PC   1 

我想获得:

IdProj  DocType  NumDoc 
00265  PC   2 
00265  PC   3 
00268  PC   2 
00268  PC   3 
00268  PC   4 
00268  PC   5 
00268  PC   6 
00370  PC   2 
00370  PC   3 
00370  PC   4 

我想组通过IdProj和增量例程是必要的,但我没有解决方案呢。有人可以给我任何帮助吗? 非常感谢。

回答

0

您可以使用

;WITH CTE AS 
(
SELECT *, 
     ROW_NUMBER() OVER (PARTITION BY IdProj ORDER BY IdProj) AS RN 
FROM YourTable 
) 
UPDATE CTE 
SET NumDoc = 1 + RN 

中有表示任何特定的排序中的分区,这样在相同的值排序的分区将做到这一点需要随意的问题上什么都没有。