postgresqlcase when用法
时间: 2023-11-04 10:58:06 浏览: 25
PostgreSQL中的CASE WHEN语句可以在特定条件下返回不同的结果。其基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
WHEN conditionN THEN resultN
ELSE default_result
END
```
其中,condition1到conditionN是可以是任何可评估为真或假的表达式,result1到resultN是在满足相应条件时返回的结果。 ELSE子句是可选的,用于指定在没有条件满足时返回的默认结果。
例如,如果想根据年龄来分类,可以按照以下方式使用CASE WHEN语句:
```
SELECT name, age,
CASE
WHEN age < 18 THEN '未成年'
WHEN age <= 30 THEN '青年'
WHEN age <= 50 THEN '中年'
ELSE '老年'
END AS category
FROM users;
```
这将返回一个名为"category"的新列,其中包含每个用户的年龄类别。
希望这能解决您的问题!
相关问题
case when使用方法
CASE WHEN是SQL语言中的条件表达式,它通常用于在查询中进行条件判断和赋值。它的语法形式如下:
```
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
```
其中,`condition`可以是任何条件表达式,`result`是在满足对应条件时的返回值,`default_result`是当所有条件都不满足时的默认返回值。
举个例子,假设有一个订单表 `order_table`,其中包含了订单号 `order_id` 和订单状态 `order_status` 两个字段。现在我们需要对订单状态进行分类,将订单状态为 `1` 的标记为 `"已完成"`,状态为 `2` 的标记为 `"待发货"`,其他状态标记为 `"未知"`。我们可以使用如下的CASE WHEN语句实现:
```
SELECT order_id,
CASE WHEN order_status = 1 THEN '已完成'
WHEN order_status = 2 THEN '待发货'
ELSE '未知'
END AS status_label
FROM order_table;
```
mysql中case when使用方法
当使用MySQL中的CASE WHEN语句时,可以像下面这样使用它:
SELECT column1, column2, CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN condition3 THEN result3
ELSE result4
END as 'AliasName'
FROM table_name;
其中,condition1、condition2和condition3是不同的条件,result1、result2和result3是针对这些条件的结果。如果没有任何条件符合情况,那么ELSE部分的结果将被返回。AliasName是自定义列名,可用于指定返回结果的列名。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)