sql语句中case when用法
时间: 2023-11-18 16:04:09 浏览: 97
在SQL语句中,CASE WHEN函数可以根据条件返回不同的值。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,`condition`是一个条件表达式,`result`是一个返回值。如果`condition`为真,则返回`result`。如果没有任何一个`condition`为真,则返回`ELSE`后面的`result`。下面是一个例子:
```
SELECT name,
CASE
WHEN age < 18 THEN '未成年'
WHEN age >= 18 AND age < 30 THEN '青年'
WHEN age >= 30 AND age < 50 THEN '中年'
ELSE '老年'
END AS age_group
FROM users;
```
这个例子中,我们根据用户的年龄将用户分为不同的年龄段,并将结果保存在`age_group`列中。
除了上面的基本语法,CASE WHEN函数还可以使用其他的操作符,比如`BETWEEN`、`LIKE`、`IN`等等。下面是一个例子:
```
SELECT name,
CASE
WHEN age BETWEEN 18 AND 30 THEN '青年'
WHEN age LIKE '%0' THEN '年龄以0结尾'
WHEN age IN (25, 30, 35) THEN '特殊年龄'
ELSE '其他'
END AS age_group
FROM users;
```
这个例子中,我们使用了`BETWEEN`、`LIKE`、`IN`等操作符来判断用户的年龄,并将结果保存在`age_group`列中。
阅读全文