mysql if null else_mysql控制流程函数(case,if,ifnull,nullif)
时间: 2023-07-25 15:37:42 浏览: 116
if-else 等 控制执行流程
MySQL中,IFNULL()函数用于检查一个表达式是否为NULL,如果为NULL则返回指定值;否则返回表达式本身的值。IFNULL()函数的语法如下:
```
IFNULL(expr1, expr2)
```
其中,expr1为要检查的表达式,expr2为如果expr1为NULL时返回的值。例如:
```
SELECT IFNULL(NULL, 10); -- 返回10
SELECT IFNULL(20, 10); -- 返回20
```
同时,MySQL还提供了其他的控制流程函数,包括:
- CASE函数:类似于switch语句,在不同条件下返回不同的值。例如:
```
SELECT CASE WHEN score >= 90 THEN 'A'
WHEN score >= 80 THEN 'B'
WHEN score >= 70 THEN 'C'
ELSE 'D' END AS grade
FROM students;
```
- IF函数:类似于IF语句,根据条件返回不同的值。例如:
```
SELECT IF(score >= 60, '及格', '不及格') AS result
FROM students;
```
- NULLIF函数:如果expr1等于expr2,则返回NULL;否则返回expr1的值。例如:
```
SELECT NULLIF(10, 10); -- 返回NULL
SELECT NULLIF(10, 20); -- 返回10
```
这些控制流程函数可以帮助我们在SQL查询中实现更加复杂的逻辑判断和计算。
阅读全文