写一个case when查询语句
时间: 2023-03-23 18:01:10 浏览: 68
好的,以下是一个示例的casewhen查询语句:
```
SELECT
customer_name,
CASE
WHEN product_type = 'A' THEN 'Category 1'
WHEN product_type = 'B' THEN 'Category 2'
WHEN product_type = 'C' THEN 'Category 3'
ELSE 'Other'
END AS product_category
FROM
sales_table;
```
这个查询语句将根据产品类型将销售表中的产品分类为三类,并在结果集中返回客户姓名和产品类别。如果产品类型不是A、B或C,则将其归类为“其他”。
相关问题
case when 写查询语句
引用 ... [ELSE statement_list END 。
引用 ... [ELSE statement_list END 。
根据提供的引用内容,case when语句有两种用法。第一种用法是在case后面跟列名,when后面跟对应的值,用于对特定的值进行判断。例如,可以使用以下语句查询一个表中特定列的值:
SELECT
CASE column_name
WHEN value1 THEN statement_list1
WHEN value2 THEN statement_list2
...
ELSE statement_list
END
FROM table_name;
第二种用法是在case后面留空,when后面跟着判断条件,用于根据条件进行判断。例如,可以使用以下语句查询满足条件的数据:
SELECT
CASE
WHEN condition1 THEN statement_list1
WHEN condition2 THEN statement_list2
...
ELSE statement_list
END
FROM table_name;
这样就可以根据不同的条件进行判断,并执行相应的语句。以上是关于case when语句的基本用法,根据实际需求可以灵活运用。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [Mysql查询时case when语句的使用](https://blog.csdn.net/liuliuhelingdao/article/details/126831103)[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^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
case when 语句生成多个列
是的,CASE WHEN语句可以生成多个列。可以使用多个CASE WHEN语句,并将它们组合在一起以生成多个列。下面是一个示例:
```
SELECT
column1,
column2,
CASE WHEN column3 = 'A' THEN 'Category A' ELSE 'Other Categories' END AS category,
CASE WHEN column4 > 100 THEN 'Large' ELSE 'Small' END AS size
FROM my_table;
```
在上面的示例中,我们使用两个CASE WHEN语句来生成两个新列,一个名为“category”,另一个名为“size”。根据第一个CASE WHEN语句,如果“column3”等于“A”,则“category”列将包含“Category A”,否则将包含“Other Categories”。根据第二个CASE WHEN语句,如果“column4”大于100,则“size”列将包含“Large”,否则将包含“Small”。