mysql-case..when知识点总结
case...when..有两种语法:
第一种:
case case_value
when when_value then statement_list
[when when_value then statement_list..]
else statement_list
end case
说明:
case_value是一个表达式,将该值与when_value的各个子句的表达式进行比较,直到找到一个相等的位置,相等后,执行对应then语句的statement_list
如果不存在when_value等于case_value,那么就执行else后的语句。
例如:
case sex
when “1” then “男”
when “2” then “女”
else “其他”
end
第二种:
case
when search_condition then statement_list
[when search_condition then statement_list]...
[else statement_list]
end
说明:
对于when的子句search_condition进行是否为真的判断,当为真的时候,执行后面的statement_list。
每个statement都包含一个活多个SQL语句,且不允许为空。
例如:
case
when sex=“1” then “男”
when sex=“2” then “女”
else “其他”
end
转载整理自https://dev.mysql.com/doc/refman/8.0/en/case.html