10,简单聊聊if函数和case when函数的使用方法
时间: 2024-09-25 22:11:05 浏览: 38
在SQL中,IF函数和CASE WHEN函数都是用于条件判断的重要工具。
**IF函数**通常有三种形式(取决于使用的SQL方言):
1. IF(condition, value_if_true, value_if_false):当condition为真时返回value_if_true,否则返回value_if_false。
```sql
SELECT IF(column > 5, ' Greater than 5', ' Less or equal to 5');
```
2. IIF(condition, true_value, false_value):同上,只是某些数据库支持更简洁的语法。
```sql
SELECT IIF(column > 5, 'True', 'False');
```
3. IFNULL(value, default_value): 如果value非空则返回value,否则返回default_value。
```sql
SELECT IFNULL(null_column, 'Default Value');
```
**CASE WHEN函数**则是更强大的条件判断工具,可以处理一系列的条件分支:
```sql
CASE
WHEN condition_1 THEN result_1
WHEN condition_2 THEN result_2
[ ... ]
ELSE default_result
END
```
每个WHEN后的表达式需满足就会返回对应的result,所有WHEN都未匹配到才会执行ELSE部分。
例如,计算员工的工资等级:
```sql
SELECT
CASE
WHEN salary > 10000 THEN 'Manager'
WHEN salary > 5000 THEN 'Salaried Employee'
ELSE 'Hourly Worker'
END as job_title
FROM employees;
```
阅读全文