0
我創建了一個表,看起來像這樣在SQL Server中的分組列:建設2012
ID TSPPLY_DT NEXT_DT DAYS_BTWN TIME_TO_EVENT CENSORED ENDPOINT
-----------------------------------------------------------------------------
1 2014-01-01 2014-01-10 10 10 0 0
1 2014-01-10 2014-01-21 11 21 0 0
1 2014-01-21 NULL NULL 21 1 0
2 2015-04-01 2015-04-30 30 30 0 0
2 2015-04-30 2015-05-03 1 31 0 1
2 2015-05-03 2015-05-06 3 34(should be 3)0 0
2 2015-05-06 2015-05-16 10 44(shouldbe 13)1 0
的TIME_TO_EVENT
列然而,這不是我的代碼添加正確 - 這個想法是添加了天之間,直到ID
變化,CENSORED
= 1或ENDPOINT
= 1
我想我需要的是一個除了列在那裏我可以總結的基礎上ID
和GROUPING
聚集......隨着輸出如下:
ID TSPPLY_DT NEXT_DT DAYS_BTWN TIME_TO_EVENT CENSORED ENDPOINT GROUPING
----------------------------------------------------------------------------------------
1 2014-01-01 2014-01-10 10 10 0 0 A
1 2014-01-10 2014-01-21 11 21 0 0 A
1 2014-01-21 NULL NULL 21 1 0 A
2 2015-04-01 2015-04-30 30 30 0 0 A
2 2015-04-30 2015-05-03 1 31 0 1 A
2 2015-05-03 2015-05-06 3 3 0 0 B
2 2015-05-06 2015-05-16 10 13 1 0 B
那麼關於如何創建GROUPING
列的任何想法?它會像IF下一行ID
是一樣的當前行,檢查CENSORED
AND ENDPOINT
。如果任一= 1,則對於下一行,將分組更改爲新值。一旦達到新的ID
,將grouping
重置爲A(或任何任意值)並再次運行測試。
謝謝,但我的專欄DAYS_BTWN運行正常。該問題特別在TIME_TO_EVENT列中 - 如果您看到第一個數據示例,我已經評論了不正確添加的行。 – Brrrr