TID StartTime Uid WId
1 2011-06-06 09:30:00.000 10 1.5
2 2011-06-06 09:40:00.000 10 3.5
3 2011-06-06 09:50:00.000 10 1.0
4 2011-06-06 10:45:00.000 10 2.5
5 2011-06-06 10:50:00.000 10 1.5
6 2011-06-06 10:55:00.000 10 0
7 2011-06-06 11:30:00.000 10 0
8 2011-06-06 11:35:00.000 10 0
9 2011-06-06 11:40:00.000 10 0
10 2011-06-06 11:43:00.000 10 0
11 2011-06-06 11:20:00.000 11 7.0
12 2011-06-06 11:30:00.000 11 1.0
我有表TblTask數據基於計數或權重需要的輸出,我需要編寫一個查詢來計算(SUM(WID)或Count(TID的))基於每個開始時間的時間差另一個啓動時間的時差爲1小時或接近1小時由UID分組。基於爲TimeDifference
例如先取時間(2011-06-06 09:30:00); < = 1小時的最近開始時間爲(2011-06-06 10:30:00.000)(如果SUM(Wid)> = 5.0或行數≥5)。這裏的權重是(1.5 + 3.5 + 1.0 = 6.0) TID的(3,4,5)Here Weights是(1.0),我們需要顯示記錄和 前3行TID(1,2,3) + 2.5 + 1.5 = 5.0) 對於TID'd(4,5,6,7,8,9,10)這裏計數(TID是7)所以我想顯示所有記錄從4到10
TID的(5,6,7,8,9,10)爲Count(TID's> 5)我想顯示從5到10的所有記錄
對於TID(6,7,8,9,10)as計數(TID是= 5)我想顯示從6到10的所有記錄
對於TID 11,因爲WID> 5我想顯示記錄11
對於TID的(11,12)爲WID> 5,我再次想顯示記錄11和12
所需的輸出將是:
TID StartTime Uid
1 2011-06-06 09:30:00.000 10
2 2011-06-06 09:40:00.000 10
3 2011-06-06 09:50:00.000 10
3 2011-06-06 09:50:00.000 10
4 2011-06-06 10:45:00.000 10
5 2011-06-06 10:50:00.000 10
4 2011-06-06 10:45:00.000 10
5 2011-06-06 10:50:00.000 10
6 2011-06-06 10:55:00.000 10
7 2011-06-06 11:30:00.000 10
8 2011-06-06 11:35:00.000 10
9 2011-06-06 11:40:00.000 10
10 2011-06-06 11:43:00.000 10
5 2011-06-06 10:50:00.000 10
6 2011-06-06 10:55:00.000 10
7 2011-06-06 11:30:00.000 10
8 2011-06-06 11:35:00.000 10
9 2011-06-06 11:40:00.000 10
10 2011-06-06 11:43:00.000 10
6 2011-06-06 10:55:00.000 10
7 2011-06-06 11:30:00.000 10
8 2011-06-06 11:35:00.000 10
9 2011-06-06 11:40:00.000 10
10 2011-06-06 11:43:00.000 10
11 2011-06-06 11:20:00.000 11
11 2011-06-06 11:20:00.000 11
12 2011-06-06 11:30:00.000 11
你能再試一次重申你的算法?如果他們是連續的,你想要每小時的樂隊,但總是在一小時後將樂隊的開始時間重置到下一個起點? – billinkc