SQLiteのDATE()
関数は、特定の月の特定の日の最初のインスタンスの日付を返す機能を提供します。したがって、これを使用して、特定の月の最初の月曜日を返すことができます。また、これを使用して、最初の火曜日、水曜日、木曜日、金曜日などを返すこともできます。
DATETIME()
を使用できます 日時の値を返したい場合。
例
SELECT DATE('2025-10-20', 'start of month', 'weekday 1');
結果:
2025-10-06
この場合、特定の月の最初の月曜日は2025-10-06に発生します。
start of month
およびweekday 1
修飾子は、最初の引数で指定された日付を変更します。日曜日は0、月曜日は1、火曜日は2というように続きます。したがって、weekday 1
の値を使用します 月曜日を選択します。
今月の第1月曜日
この例では、現在の日付を使用してプロセスを順を追って説明します。
SELECT
DATE('now') AS "Now",
DATE('now', 'start of month') AS "Start of Month",
DATE('now', 'start of month', 'weekday 1') AS "First Monday";
結果:
Now Start of Month First Monday ---------- -------------- ------------ 2022-03-09 2022-03-01 2022-03-07
この例は、変更の各段階での日付を示しています。 now
を使用します 現在の日付を返すには、start of month
月の初めに戻すには、weekday 1
日付を最初の月曜日に進めます。
DATETIME()
機能
DATETIME()
を使用することもできます 同じことをする機能。違いは、時間の部分が含まれていることです:
SELECT DATETIME('2025-10-20', 'start of month', 'weekday 1');
結果:
2025-10-06 00:00:00