MySQL if then/ case
Там! Я пишу сценарий MySQL в MySQl Front 4.1.
У меня есть проблема с, если тогда, заявления случая.
У меня есть следующий код:
set @prodID = -1;
select @prodID = productID
from partid_to_productid
where PartID= 8;
case @prodID
WHEN NULL then select 0;
else select 3;
end case
Фронт не хочет его исполнять. Зачем? Может кто-нибудь объяснить мне, что здесь не так?
1 ответ
Решение
SELECT
выходит за пределы CASE
:
SELECT
CASE @prodID
WHEN NULL THEN 0
ELSE 3
END;
На самом деле, это не возвращает 0 для меня, как я ожидаю при тестировании. Вместо этого попробуйте:
SELECT CASE WHEN @prodID IS NULL THEN 0 ELSE 3 END;