SQLiteのDATE()
を使用できます 指定された日付に計算を実行する関数。私たちができることの1つは、特定の月の特定の日の1番目、2番目、3番目、または4番目のインスタンスを返すことです。
例
デモンストレーションの例を次に示します。
SELECT
DATE('2025-10-20', 'start of month', 'weekday 1') AS "First",
DATE('2025-10-20', 'start of month', '+7 days', 'weekday 1') AS "Second",
DATE('2025-10-20', 'start of month', '+14 days', 'weekday 1') AS "Third",
DATE('2025-10-20', 'start of month', '+21 days', 'weekday 1') AS "Fourth",
DATE('2025-10-20', 'start of month', '+28 days', 'weekday 1') AS "Fifth";
結果:
First Second Third Fourth Fifth ---------- ---------- ---------- ---------- ---------- 2025-10-06 2025-10-13 2025-10-20 2025-10-27 2025-11-03
この例では、開始日はすべてのインスタンスとほとんどの引数で同じです。変更されるのは、月の初めにどれだけ追加するかだけです。何も追加しない場合は、最初の月曜日を返し、7日を追加すると、第2月曜日を返すことができます。
ここでは、月の初め
を使用します 日付を月の最初の日に戻します。次に、さらに修飾子を使用して、それに応じてその日付を変更します。
平日1
修飾子は、日付を次の月曜日に進めます(日曜日は0、月曜日は1、火曜日は2など)。
第2月曜日を取得するには、 +7 days
を使用できます 日付を1週間進めます。それ以降の月曜日には、その数値に7日を追加します(+14日
、+21日コード> 、
+28日コード> など)。
また、28日を追加すると、翌月の第1月曜日に戻ることがわかります。