Case when then else用法
时间: 2023-07-05 08:32:51 浏览: 66
CASE WHEN THEN ELSE语句是一种条件语句,用于在满足特定条件时返回不同的结果。
它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
```
其中,condition是一个或多个条件表达式,result是当满足该条件时要返回的结果。ELSE关键字定义了在没有任何条件匹配时要返回的默认结果。
例如,以下是一个使用CASE WHEN THEN ELSE语句的示例:
```
SELECT
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 70 THEN '中等'
WHEN score >= 60 THEN '及格'
ELSE '不及格'
END AS grade
FROM
students;
```
在上面的示例中,如果学生的分数大于等于90,则返回“优秀”,大于等于80则返回“良好”,以此类推。如果没有任何条件匹配,则返回“不及格”。
相关问题
oracle的case when then else end用法
Oracle的CASE WHEN THEN ELSE END语句是一种流程控制语句或条件控制语句,类似于Java中的if-else if-else语句,用于根据条件进行逻辑分组或数据分析。在Oracle中,使用CASE WHEN THEN ELSE END可以根据不同的条件返回不同的结果。
下面是一些示例说明Oracle的CASE WHEN THEN ELSE END的用法:
简单CASE函数:
```sql
SELECT name,
age,
CASE sex
WHEN '1' THEN '男孩'
WHEN '2' THEN '女孩'
ELSE '其他'
END AS gender
FROM user;
```
CASE搜索函数:
```sql
SELECT name,
age,
CASE
WHEN sex = '1' THEN '男'
WHEN sex = '2' THEN '女'
ELSE '其他'
END AS gender
FROM user;
```
以上两个例子展示了如何根据性别编码将性别翻译为对应的文字。根据性别(sex)字段的值,CASE WHEN THEN ELSE END语句返回不同的结果。
通过这种方式,你可以根据不同的条件编写逻辑,对数据进行分类或分析。CASE WHEN THEN ELSE END语句在Oracle数据库入门技能中非常常见,是非常有用的工具之一。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
update case when then else end用法
update case when then else end 是 SQL 语言中的一种条件更新语句,用于根据条件更新表中的数据。其基本语法如下:
```
UPDATE 表名 SET 列名 = CASE WHEN 条件1 THEN 值1
WHEN 条件2 THEN 值2
...
ELSE 值n
END
WHERE 条件;
```
其中,CASE WHEN THEN ELSE END 是一个条件表达式,用于根据不同的条件返回不同的值。在 UPDATE 语句中,它被用于更新指定列的值。
举个例子,假设有一个学生表(student),其中包含学生的姓名(name)、年龄(age)和性别(gender)三个字段。现在需要将所有女生的年龄加 1,男生的年龄不变。可以使用如下 SQL 语句:
```
UPDATE student SET age = CASE WHEN gender = '女' THEN age + 1 ELSE age END WHERE 1=1;
```
这条语句会将 student 表中所有女生的年龄加 1,男生的年龄不变。