sqlserver case when then else end用法
时间: 2024-09-13 10:09:10 浏览: 50
sql学习之CASE WHEN THEN ELSE END的用法
SQL Server 的 `CASE` 表达式是一种条件选择结构,用于根据指定的条件返回不同的值。它的基本语法如下:
```sql
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
[ ELSE default_result ]
END
```
这里解释一下各个部分:
- `WHEN condition1 THEN result1`: 如果 `condition1` 成立,将返回 `result1`。可以有一个或多个这样的 `WHEN` 子句。
- `ELSE default_result`: 如果所有 `WHEN` 条件都不满足,则会执行 `ELSE` 后面的 `default_result`。这是可选的,如果不提供默认结果,当所有条件都不满足时,不会返回任何值。
例如,如果你有一个用户表,你想根据他们的年龄分为儿童、成人和老人:
```sql
SELECT
Name,
CASE
WHEN Age < 18 THEN '儿童'
WHEN Age BETWEEN 18 AND 60 THEN '成人'
ELSE '老人'
END AS UserCategory
FROM Users;
```
在这个例子中,如果用户的年龄小于18岁,就会显示他们是儿童,以此类推。
阅读全文