Mysql case when
时间: 2023-07-07 16:44:27 浏览: 48
MySQL CASE WHEN语句可以用于在SQL查询中执行条件逻辑。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,`condition1`、`condition2`等是条件表达式,`result1`、`result2`等是对应条件表达式成立时的结果。如果所有条件都不成立,则返回`ELSE`后面的`result`。
例如,下面的查询将根据`price`列的值返回`cheap`、`moderate`或`expensive`:
```
SELECT name, price,
CASE
WHEN price < 50 THEN 'cheap'
WHEN price < 100 THEN 'moderate'
ELSE 'expensive'
END AS price_range
FROM products;
```
这个查询将返回一个包含`name`、`price`和`price_range`列的结果集,其中`price_range`列是根据`price`列的值计算出来的。
相关问题
mysql case when
MySQL CASE WHEN statement is a conditional statement that evaluates multiple conditions and returns a value based on the first condition that is true.
The basic syntax for the MySQL case when statement is as follows:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
WHEN conditionN THEN resultN
ELSE default_result
END
```
Here is an example of how to use the MySQL case when statement:
```
SELECT first_name, last_name,
CASE
WHEN age < 18 THEN 'Minor'
WHEN age BETWEEN 18 AND 65 THEN 'Adult'
ELSE 'Senior'
END AS age_group
FROM customers;
```
In this example, we are selecting the first name, last name, and age group of customers from the customers table. We use the MySQL case when statement to evaluate the age of each customer and assign them to an age group based on their age. If the customer is under 18, they are assigned to the 'Minor' group, if they are between 18 and 65, they are assigned to the 'Adult' group, and if they are over 65, they are assigned to the 'Senior' group.
The resulting output would look something like this:
```
+------------+-----------+-----------+
| first_name | last_name | age_group |
+------------+-----------+-----------+
| John | Doe | Adult |
| Jane | Smith | Senior |
| Bob | Johnson | Minor |
| Sarah | Lee | Adult |
+------------+-----------+-----------+
```
MySQL case when
回答: 在MySQL中,CASE WHEN是一种条件表达式,用于在查询语句中进行条件判断和返回不同的结果。它的语法如下:
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
\[1\]
在SELECT查询中,可以使用CASE WHEN来创建新的字段,根据条件返回不同的值。例如,可以使用CASE WHEN来替换字符串或进行分组排序。在WHERE子句中也可以使用CASE WHEN进行条件判断。在GROUP BY子句中使用CASE WHEN可以得到以前认为不可能得到的分组排序结果集。\[2\]\[3\]
#### 引用[.reference_title]
- *1* [Mysql中的CASE WHEN](https://blog.csdn.net/qq_44011569/article/details/130884794)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* *3* [MySQL 的CASE WHEN 语句使用说明](https://blog.csdn.net/lkx021699/article/details/120543003)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]