SQL の週番号から週の開始日と終了日を取得する
メンバーの結婚式数を計算するクエリがあるシナリオ年と週番号でグループ化されているため、各週の開始日と終了日を決定するのに役立ちます。
これを実現するには、次の操作を行います。曜日に基づく計算を組み込み、DATEADD 関数を使用できます。
答え:
次の式を使用して、週の開始日と週の終了日を計算できます。 :
- 週の開始: DATEADD(dd, -(DATEPART(dw, WeddingDate)-1), WeddingDate)
- 週末: DATEADD(dd, 7-(DATEPART(dw, WeddingDate)), WeddingDate)
説明:
-
DATEPART(dw, WeddingDate): WeddingDate の曜日を返します ( 1=日曜日、 7=土曜日).
-
-(DATEPART(dw, WeddingDate)-1): 曜日を減算 (マイナス 1) して、週の開始前の日数を取得します。 (例: 水曜日の場合は 2 を引きます).
-
DATEADD(dd, ...): 指定された日数を WeddingDate に追加します (例: 水曜日に 2 日追加すると月曜日になります)。
例:
WeddingDate が '2023-03-08' (水曜日) の場合、計算は次のようになります。 be:
- 週の開始日: DATEADD(dd, -(DATEPART(dw, '2023-03-08')-1), '2023-03-08') = '2023-03- 06' (月曜日)
- 週末: DATEADD(dd, 7-(DATEPART(dw, '2023-03-08')), '2023-03-08') = '2023-03-12' (日曜日)
以上がSQLで週番号から週の開始日と終了日を計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。