CASE WHEN 和CASE ** WHEN
时间: 2023-09-11 08:04:48 浏览: 91
引用中的示例展示了CASE WHEN的用法。在SQL语句中,CASE WHEN用于根据条件对字段进行赋值,类似于if-else语句。比如在给定的表中,根据orderType字段的值,将其映射为不同的类型,并统计每种类型的数量。
引用中的示例展示了SUM(CASE WHEN)的用法。在SQL语句中,SUM(CASE WHEN)用于在满足某个条件时求和。比如在给定的表中,根据sex字段的值,将population字段进行求和,并分别求和男性和女性的人口数量。
引用中的示例展示了在CASE语句中使用表达式的用法。在SQL语句中,CASE ** WHEN用于根据不同的条件对字段进行替换或分类。比如在给定的表中,根据contry字段的值,将其替换为亚洲或北美洲,并统计每个类别的人口数量。
综上所述,CASE WHEN和CASE ** WHEN在SQL语句中用于根据条件对字段进行赋值、求和或替换,并根据不同的条件进行分类和统计。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
相关问题
case when case when
CASE WHEN语句是一种在SQL中使用的条件表达式,它允许根据不同的条件返回不同的结果。而CASE WHEN语句可以嵌套使用,形成CASE WHEN嵌套结构。
下面是一个示例:
```
SELECT column_name,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
FROM table_name;
```
在上面的示例中,column_name是要查询的列名,condition1、condition2等是条件表达式,result1、result2等是满足对应条件时返回的结果,ELSE result是当没有任何条件满足时返回的默认结果。
mysql case when CASE WHEN
CASE WHEN语句用于计算条件列表并返回多个可能结果表达式之一。它有两种格式:简单CASE函数和搜索CASE函数。
简单CASE函数将某个表达式与一组简单表达式进行比较以确定结果。它的语法格式如下:
CASE input_expression
WHEN when_expression THEN result_expression
[ELSE else_result_expression]
END
搜索CASE函数计算一组布尔表达式以确定结果。它的语法格式如下:
CASE
WHEN [Boolean_expression] THEN [result1]
...
ELSE [default]
END
在使用简单CASE函数时,when_expression后面必须接case列的值,不能是表达式。而在使用搜索CASE函数时,可以使用任意的布尔表达式。
以下是一个示例,以人员表为例,展示了使用CASE WHEN语句的两种用法:
1. 使用简单CASE函数:
SELECT
CASE sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '其他'
END AS '性别'
FROM people;
2. 使用搜索CASE函数:
SELECT
CASE
WHEN sex = '1' THEN '男'
WHEN sex = '2' THEN '女'
ELSE '其他'
END AS '性别'
FROM people;
在这个案例中,由于在第一个示例中使用了错误的语法,所以会导致结果不符合预期。正确的写法是在when后面直接写表达式,而不是case列的值。
阅读全文