sql >> Base de Datos >  >> RDS >> Mysql

cómo escribir una consulta basada en su columna

Según tengo entendido, si Inserted_Date = Jan 2013 y Frequency = 'Halfyearly' , luego Eligibility = 1 cuando el mes actual es 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

Si también tiene Anualmente, puede consultar

MONTH(Inserted_Date) = MONTH(NOW())

Vea esto funcionando en SQLFiddle