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

その列に基づいてクエリを作成する方法

    Inserted_Date = Jan 2013の場合、私が理解している方法 およびFrequency = 'Halfyearly' 、次にEligibility = 1 当月がJan 2013, Jul 2013, Jan 2014, Jul 2014 etc..

    UPDATE TableA
    SET Eligibility = CASE WHEN (Frequency = 'Halfyearly' 
                                AND MONTH(Inserted_Date) % 6 = MONTH(NOW()) % 6) 
                             OR (Frequency = 'Quarterly' 
                                AND MONTH(Inserted_Date) % 3 = MONTH(NOW()) % 3)
                          THEN 'Yes'
                          ELSE 'No' 
                     END
    

    毎年お持ちの場合は、チェックするだけです

    MONTH(Inserted_Date) = MONTH(NOW())
    

    SQLFiddle での作業をご覧ください



    1. 空のテーブルのMAX()をNULLではなく0として扱う方法

    2. Oracleデータベースで日付形式を変更する方法

    3. DBXエラー:ドライバーを正しく初期化できませんでした

    4. Oracleの数値列の精度の変更