mysql中when用法_MySQL中casewhen的基本用法总结
MySQL中的CASEWHEN语句是一种条件表达式,它可以根据不同的条件选择不同的操作或返回不同的值。它的基本语法如下:
```
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,`condition1`、`condition2`等为条件,`result1`、`result2`等为结果。可以根据需要设置
多个条件和结果。
mysql中select下面是MySQL中CASEWHEN语句的基本用法总结。
1.简单用法:CASEWHEN语句可以用于简单的条件判断,例如将一个字段的值根据不同的条件映射成不同的结果。
```sql
SELECT CASE WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 60 THEN '及格'
ELSE'不及格'
END AS grade
FROM students;
```
2.多重条件:可以根据多个条件进行判断,按照条件的顺序,满足条件则执行对应的结果,可以设置多个条件和结果。
```sql
SELECT CASE WHEN gender = 'M' AND age > 30 THEN '男性中年人'
WHEN gender = 'M' THEN '男性'
WHEN gender = 'F' AND age > 30 THEN '女性中年人'
WHEN gender = 'F' THEN '女性'
ELSE'未知'
END AS category
FROM students;
```
3.同时使用条件和计算:CASEWHEN语句还可以结合其他函数和运算符进行计算,例如对字段值进行加减乘除等操作后再进行判断。
```sql
SELECT CASE WHEN score - 10 > 90 THEN '优秀'
WHEN score - 10 > 80 THEN '良好'
WHEN score - 10 > 60 THEN '及格'
ELSE'不及格'
END AS grade
FROM students;
```
4.CASEWHEN语句作为表达式:CASEWHEN语句还可以作为其他表达式的一部分使用,例如在SELECT语句中计算字段的值。
```sql
SELECT name, age,
CASE WHEN score >= 60 THEN '及格'
ELSE'不及格'
END AS result
FROM students;
```
5.CASEWHEN语句的嵌套:CASEWHEN语句也可以进行嵌套,根据不同的条件和结果进行多层次的判断。
```sql
SELECT CASE WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 60 THEN '及格'
ELSE CASE WHEN score >= 40 THEN '需要努力'
ELSE'不及格'
END
END AS grade
FROM students;
```
需要注意的是CASEWHEN语句的条件和结果可以是任意的,可以是常量、字段、表达式、函数等等。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论