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

SQLiteで月の第1、第2、第3、または第4月曜日を取得

    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月曜日に戻ることがわかります。


    1. NHibernateおよびSqlServerでのデータ監査

    2. DATE_SUB()の例– MySQL

    3. ClusterControlを使用して本番環境に対応したMySQLまたはMariaDBGaleraクラスターをデプロイする方法

    4. 挿入された行のPKガイドを取得するための最良の方法