sql case语句
时间: 2023-07-03 10:28:23 浏览: 46
SQL中的CASE语句是一种条件表达式,它根据一个或多个条件进行选择性地返回值。它的基本语法如下所示:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
WHEN conditionN THEN resultN
ELSE default_result
END
```
其中,`CASE`是关键字,`condition1`、`condition2`、`conditionN`是条件表达式,`result1`、`result2`、`resultN`是相应条件满足时返回的结果,`default_result`是当所有条件都不满足时返回的默认结果。
例如,以下SQL语句使用CASE语句返回一个数字列的不同等级:
```
SELECT
score,
CASE
WHEN score >= 90 THEN 'A'
WHEN score >= 80 THEN 'B'
WHEN score >= 70 THEN 'C'
WHEN score >= 60 THEN 'D'
ELSE 'F'
END AS grade
FROM
scores;
```
在这个例子中,如果分数大于或等于90,那么等级为A,如果分数大于或等于80但小于90,则等级为B,以此类推。如果分数小于60,则等级为F。
相关问题
sqlcase条件语句
SQL中的CASE语句是一种条件语句,类似于高级编程语言中的switch语句。它允许我们根据条件的满足来执行不同的操作或返回不同的结果。
下面是一个示例,演示了如何使用CASE语句在SQL中进行条件判断:
```sql
SELECT column_name,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
FROM table_name;
```
在上面的示例中,`column_name`是要查询的列名,`condition1`、`condition2`等是条件表达式,`result1`、`result2`等是与条件匹配时返回的结果。
以下是一个具体的例子,展示了如何使用CASE语句在SQL中进行条件判断:
```sql
SELECT product_name,
CASE
WHEN price > 100 THEN 'Expensive'
WHEN price > 50 THEN 'Moderate'
ELSE 'Cheap'
END AS price_category
FROM products;
```
上述示例中,根据产品的价格,将其分为不同的价格类别,并将结果显示为`price_category`列。
sql的case语句
SQL中的CASE语句用于根据条件执行不同的操作。它类似于编程语言中的if-else语句。CASE语句有两种形式:简单CASE表达式和搜索CASE表达式。
1. 简单CASE表达式:
```sql
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE result
END
```
在简单CASE表达式中,expression是要比较的值,value1、value2等是可能的值,result1、result2等是与每个值相关联的结果。如果expression与某个值匹配,则返回相应的结果;如果没有匹配的值,则返回ELSE部分的结果(可选)。
2. 搜索CASE表达式:
```sql
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
在搜索CASE表达式中,没有给定expression。而是使用一系列条件和结果,满足条件时返回相应的结果。如果没有条件匹配,则返回ELSE部分的结果(可选)。
下面是一个使用CASE语句的示例:
```sql
SELECT column_name,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END AS alias_name
FROM table_name;
```
在这个示例中,你可以将column_name替换为要选择的列名,condition1、condition2等为条件表达式,result1、result2等为与每个条件相关联的结果,alias_name为返回结果的别名。