0
データセットを「クリーン」にして新しい変数を宣言し、ランクに基づいて日付を入力します。私のデータセットは、このようになりますランクに基づいて新しい変数と入力日付を宣言する
:
+-----+--------------+------------+-------+
| ID | Start_date | End_date | Rank |
+-----+--------------+------------+-------+
| a | May '16 | May '16 | 5 |
| a | Jun '16 | Jul '16 | 4 |
| a | Jul '16 | Aug '16 | 3 |
| a | Aug '16 | NULL '16 | 2 |
| a | Sept '16 | NULL '16 | 1 |
+-----+--------------+------------+-------+
私は基本的に、ランク2の終了日に入力するランク1の開始日をしたいか、入力を言う(常に-1)端部6に5を起動します。
SELECT
[Start_Date] as 'start'
,[End_Date] as 'end'
,[Code] as 'code'
,[ID] as 'id'
,rank() over (partition by [id] order by [Start_Date]) as 'rank'
INTO #1
FROM [Table]
ORDER BY [id]
その動作しません、次の一部...
DECLARE new_end
BEGIN select [#1].[start] into new_end FROM [#1]
WHERE (
([#1].[rank] = 1)
AND ([#1].[end] IS NULL)
)
ポストあなたの予想出力はそう誰もが簡単にできます。 – Tomato32