3
我有了這種格式記錄的表:此過程的光標替代方法?
SPECIAL_ID | OTHER_ID | NAME | TIMESTAMP
我需要創建基於關閉的這個新表,但只拿到相距至少25分鐘從以前的一個記錄。間隔不一致。所以,如果我從記錄1開始,我需要從記錄1的時間戳中獲取至少25分鐘的下一個記錄。這將是新表中的記錄2。然後下一個記錄是上一個提取後的25分鐘。所以,這裏是信息的一個例子:
AAA | 1 | WHATEVER2 | 2016-11-20 00:00:00
BCD | 2 | WHATEVER00 | 2016-11-20 00:02:00
AAA | 3 | WHATEVER01 | 2016-11-20 00:09:00
AAA | 4 | WHATEVER55 | 2016-11-20 00:20:00
XYZ | 5 | WHATEVER | 2016-11-20 00:24:00
AAA | 6 | WHATEVER11 | 2016-11-20 00:45:00
QRS | 7 | WHATEVER | 2016-11-20 00:46:00
QRS | 8 | WHATEVER12 | 2016-11-20 00:59:00
AAA | 9 | WHATEVER12 | 2016-11-20 01:02:00
AAA |10 | WHATEVER12 | 2016-11-20 01:17:00
什麼我試圖做的事:
AAA | 1 | WHATEVER2 | 2016-11-20 00:00:00
AAA | 6 | WHATEVER11 | 2016-11-20 00:45:00
AAA |10 | WHATEVER12 | 2016-11-20 01:17:00
我設法使用遊標並測試了一小部分的記錄。它的工作....但我有百萬記錄,需要用這種方式進行分析。看起來,光標只是要求麻煩。
有沒有更好的方法來做到這一點?
我被SQL Server 2008卡住了,所以lead()
和lag()
是不可能的。
任何幫助非常感謝。