sql >> データベース >  >> RDS >> SQLite

SQLiteで月の最初の月曜日を取得する

    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

    1. ユーザーがVBAの入力ボックスで[キャンセル]をクリックしたかどうかを確認する方法

    2. SQL Serverクエリの用語集—DBAのスティックシフト

    3. Oracle11g-RegExで制約をチェック

    4. Oracleのテーブルでのシーケンスギャップの検索