mysql CASE语句
时间: 2023-10-21 18:16:34 浏览: 96
MySQL的CASE语句类似于其他编程语言中的switch语句,它可以根据条件进行选择并返回不同的结果。
基本语法如下:
```
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE result
END
```
其中,expression是需要判断的条件表达式,value1、value2等是需要比较的值,result1、result2等是对应的结果,ELSE子句是可选的,当所有条件都不满足时返回的结果。
例如,下面的示例中,当gender为'M'时,返回'Male',当gender为'F'时,返回'Female',否则返回'Unknown':
```
SELECT name,
CASE gender
WHEN 'M' THEN 'Male'
WHEN 'F' THEN 'Female'
ELSE 'Unknown'
END AS gender_desc
FROM users;
```
除了上述基本语法,CASE语句还可以使用简化的语法:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,condition1、condition2等是需要判断的条件,result1、result2等是对应的结果。这种语法可以根据需要进行多个条件的判断,更加灵活。
例如,下面的示例中,根据用户的年龄范围返回不同的等级:
```
SELECT name,
CASE
WHEN age < 20 THEN 'Junior'
WHEN age >= 20 AND age < 30 THEN 'Senior'
ELSE 'Master'
END AS level
FROM users;
```
这就是MySQL的CASE语句的基本用法。
阅读全文