以下声明完美无缺
select case when person ="name1" then "nickname1"
when person="name2" then "nickname2"
else person end as name
from person;
但它失败了以下陈述的IF ELSE
select if person ="name1" then "nickname1"
else person end as name
from person;
(IF-THEN-ELSE)和(CASE-WHEN-THEN-ELSE-END)之间有什么区别? 还有一个是我们对IF-THEN = -ELSE有“CASE”声明。
答案 0 :(得分:4)
区别在于CASE-IF-ELSE-END
不存在。
这不是正确的SQL。
CASE case_value
WHEN when_value THEN statement_list
[WHEN when_value THEN statement_list] ...
[ELSE statement_list]
END CASE
OR
CASE
WHEN search_condition THEN statement_list
[WHEN search_condition THEN statement_list] ...
[ELSE statement_list]
END CASE
答案 1 :(得分:0)
MYSQL中没有CASE-IF-ELSE-END。
答案 2 :(得分:0)