2024年3月14日发(作者:)

case when在sql中的用法

在SQL中,CASE WHEN语句用于在满足特定条件时根据不

同的情况返回不同的值。

语法如下所示:

```

CASE

WHEN condition1 THEN result1

WHEN condition2 THEN result2

...

ELSE result

END

```

在这个语法中,`CASE`关键字用于声明开始一个CASE

WHEN语句块,`WHEN`关键字后面跟随一个条件,当该条件

满足时,就返回对应的结果值。可以有多个`WHEN`条件,每

个条件后面跟随一个结果值。

最后,使用`ELSE`关键字定义一个默认的结果值,当所有条

件都不满足时返回该值。

以下是一个示例:

```

SELECT name,

CASE

WHEN age >= 18 THEN '成年'

ELSE '未成年'

END AS status

FROM students;

```

在上面的示例中,根据学生的年龄(age)字段,如果年龄大于

等于18,则返回'成年',否则返回'未成年'。并且,使用`AS`关

键字指定结果值的别名为status。

这是CASE WHEN语句的基本用法,但是还可以进行更复杂

的操作,例如在条件中使用逻辑运算符、嵌套使用CASE

WHEN语句等。