2016-07-29 1 views
0

У меня есть этот случай заявление:MySQL правильного случай Заявление переопределить первый заявленное значение

CASE 
WHEN CI.season = 1 THEN "Wet Season" 
WHEN CI.season = 2 THEN "Early Wet Season" 
WHEN CI.season = 3 THEN "Late Wet Season" 
WHEN CI.season = 4 THEN "Dry Season" 
WHEN CI.season = 4 and R.date_accessed > "2016-05-20 23:59:59" THEN "NULL" 
ELSE "NULL" END as "Season" , 

Как я могу показать, что если сезон значение 4 и дата обращения к этому> чем «2016-05-20 23:59 : 59 "должно равняться NULL. Сейчас он показывает только «Сухой сезон». Я думаю, что он только читает первый сценарий. Спасибо за ответ, ребята.

ответ

1

Попробуйте это:

CASE 
WHEN CI.season = 1 THEN "Wet Season" 
WHEN CI.season = 2 THEN "Early Wet Season" 
WHEN CI.season = 3 THEN "Late Wet Season" 
WHEN CI.season = 4 and R.date_accessed > "2016-05-20 23:59:59" THEN "NULL" 
WHEN CI.season = 4 THEN "Dry Season" 
ELSE "NULL" END as "Season" 

Или

CASE 
WHEN CI.season = 1 THEN "Wet Season" 
WHEN CI.season = 2 THEN "Early Wet Season" 
WHEN CI.season = 3 THEN "Late Wet Season" 
WHEN CI.season = 4 THEN 
    CASE WHEN R.date_accessed > "2016-05-20 23:59:59" THEN "NULL" ELSE "Dry Season" END 
ELSE "NULL" END as "Season" 
+0

Второй один делает свою работу, но это занимает слишком много времени ..;) –