我有以下查詢:TSQL按周選擇最後一個值?
SELECT row_ID, value, date_added FROM dbo.Report WHERE salesman_ID = @salesman_ID AND row_ID IN (SELECT MAX(row_ID) FROM dbo.Report WHERE salesman_ID = @salesman_ID GROUP BY (date_added)) ORDER BY date_added ASC
這將選擇在每天進入給定用戶的最後一個值(DATE_ADDED列不包含時間值,而行ID autonumbered)。該查詢的工作原理,但我想要做的是選擇一個給定的日曆周而不是給定的一天輸入的最後一個值。
例如,這裏就是當前的查詢返回:
row_ID | value | date_added 1 | 25 | 7-5-2010 2 | 50 | 7-7-2010 5 | 40 | 7-15-2010 9 | 55 | 7-16-2010 11 | 60 | 7-27-2010
這是我想它返回:
value | week_of 50 | 7-4-2010 55 | 7-11-2010 60 | 7-22-2010
任何想法?
什麼是您的日曆周?每週開始是區域性的 - 有些是星期天,有些則是星期一... – 2010-08-05 16:23:39
對不起,我應該指定 - 週日。 – Ethan 2010-08-05 16:37:32