2013-08-06 96 views
2

我有一個視圖,它返回了我們工作期間的日期列表。日期通常是連續的。其中一列是'WeekNumber',它以日期值爲基礎,並返回一年中的星期數。日期列重複,因爲有一些項目每天發生幾次。從日期列表中獲取星期編號

我想添加的是一個名爲WeekNumberOfPeriod的新列。在視圖中的每個週期從1開始。所以,如果我得到一個結果集有:

WeekNumber: 
37 
37 
37 
37 
37 
37 
37 
38 
38 
38 
38 
38 
38 
38 
39 
39 
39 
40 
40 
40 
40 
40 

然後我想:

WeekNumber,WeekOfPeriod

37,1 
37,1 
37,1 
37,1 
37,1 
37,1 
37,1 
38,2 
38,2 
38,2 
38,2 
38,2 
38,2 
38,2 
39,3 
39,3 
39,3 
40,4 
40,4 
40,4 
40,4 
40,4 

我想我需要ROW_NUMBER,但我用什麼來劃分的作戰。我有一些項目正在運行,所以它需要以某種方式按projectId,weeknumber進行分組。

我希望它是這樣的:

ROW_NUMBER() OVER(PARTITION BY pd.WeekNumber ORDER BY pd.DateValue) AS WeekNumberOfSprint, 

但是,這只是從1數到X每個週數。我需要同樣的週數是`,然後2 ...

回答

4

添加DENSE_RANK到外SELECT列表:

WeekOfPeriod = DENSE_RANK() OVER (ORDER BY pd.WeekNumber) 
相關問題