2


3

私は現在、2009年2月12日形式のvbscript関数を使用して、今週および先週の初日の値を取得しています。 私はそれがSQLクエリで可能かどうか疑問に思いました。

3 Answer


8


これらのステートメントはTSQLであなたが望むことをするべきです。 注意してください、ステートメントは現在の日付に基づいています。 getdate()はあなたが望む任意の日付に置き換えることができます。

LastWeekStartとしてdateadd(wk、datediff(wk、0、getdate()) -  1、0)を選択しますThisWeekStartとしてdateadd(wk、datediff(wk、0、getdate())、0)を選択します。dateadd(wk、datediff(wk) NextWeekStartとして、0、getdate()1、0)


2


今日が日曜日ならベンの答えは間違った答えを与える。 週の最初の日が日曜日なのか月曜日なのかに関係なく、現在の日付は現在の週に含まれるべきです。 2013年3月24日に彼のコードを実行すると、ThisWeekStart of 3/25/2013が返されます。 代わりに次のコードを使用しました。SELECT DATEADD(DAY、1 - DATEPART(DW、 '3/24/2013')、 '3/24/2013')


0


今週の最初の日を取得します。 追加情報については、このリンクを使用してください。

datとして日付(curdate() -  DAYOFWEEK(curdate() -  1))を選択します。