我正在MS SQL上工作。任何人都知道如何派生consecutive_d列?無論何時,連續日期應完全基於ENTER_DT。而且,如果員工在同一天進入很多次,則仍然連續計爲一天。如何編寫SQL語句以派生連續工作日?
PASS_M| ENTER_DT................|CONSECUTIVE_D
Boo K K 5/1/2012 11:55:00 PM 1
Boo K K 5/2/2012 11:30:00 PM 2
Boo K K 5/4/2012 10:30:00 AM 1
LIAW S 4/30/2012 11:48:52 PM 1
LIAW S 5/1/2012 00:11:07 AM 2
LIAW S 5/1/2012 12:32:07 AM 2
LIAW S 5/1/2012 4:42:02 AM 2
LIAW S 5/2/2012 1:10:09 AM 3
LIAW S 5/2/2012 1:43:06 AM 3
LIAW S 5/4/2012 2:17:47 AM 1
更新:這是我曾嘗試:從日期時間中提取它
SELECT PASS_M, ENTRY_DT, DATEDIFF(D, MIN(ENTRY_DT) OVER (PARTITION BY PASS_M), ENTRY_DT) + 1 AS CONSECTUTIVE_DAYS
INTO TEMP_TARGET
FROM TEMP_5
ORDER BY PASS_M, ENTRY_DT;
哦,我總是如果它有幫助的話,我總是投票。如果它確實有幫助,但它不是我的qns的答案呢?我做什麼? sry我是一個新手 – 10e5x
如果沒有答案是「答案」,但你找出答案,那麼你應該發佈你自己的答案與決議並將其標記爲答案。 –
對於這個特定的問題,你有什麼嘗試? –