sql中的case函数
时间: 2024-04-28 17:24:18 浏览: 12
SQL中的CASE函数是一种逻辑表达式,用于根据不同的条件返回不同的值。它类似于编程语言中的if-else语句。CASE函数有两种形式:简单CASE表达式和搜索CASE表达式。
简单CASE表达式的语法如下:
```
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE result
END
```
在简单CASE表达式中,根据expression的值,逐个比较每个value,并返回对应的result。如果没有匹配的value,则返回ELSE后面的result。
搜索CASE表达式的语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
在搜索CASE表达式中,根据每个condition的结果,返回对应的result。如果没有条件满足,则返回ELSE后面的result。
CASE函数可以用于SELECT语句、WHERE子句、ORDER BY子句等SQL语句中,用于实现条件判断和值转换等功能。它提供了一种灵活的方式来处理复杂的逻辑操作。
相关问题
sqlserver中case函数用法
在 SQL Server 中,CASE 函数可以根据条件表达式的结果返回不同的值。其语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,`condition1`、`condition2` 等为条件表达式,`result1`、`result2` 等为与之对应的结果,`ELSE` 关键字可选,用于指定所有条件均不满足时的默认返回值。可以有多个 `WHEN` 子句,但必须至少有一个。
例如,以下语句将根据销售额返回对应的级别:
```
SELECT
Sales,
CASE
WHEN Sales >= 1000000 THEN 'Platinum'
WHEN Sales >= 500000 THEN 'Gold'
WHEN Sales >= 100000 THEN 'Silver'
ELSE 'Bronze'
END AS SalesLevel
FROM SalesTable;
```
sql中的case when函数
SQL中的CASE WHEN函数是一种条件表达式,用于根据条件返回不同的值。它的语法如下:
```
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
```
其中,condition1、condition2等是条件表达式,result1、result2等是对应条件表达式为真时返回的结果,ELSE子句是可选的,表示所有条件都不满足时返回的默认结果。
例如,以下SQL语句使用CASE WHEN函数将学生的成绩按照分数段进行分类:
```
SELECT name, score,
CASE WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 60 THEN '及格'
ELSE '不及格'
END AS grade
FROM student;
```