带传入值的sql case when 多条件 写法
时间: 2023-10-08 19:04:03 浏览: 42
下面是带传入值的 SQL Case When 多条件写法的示例:
```sql
SELECT
CASE
WHEN column_name = value1 THEN result1
WHEN column_name = value2 THEN result2
ELSE default_result
END
FROM table_name
WHERE condition = input_value;
```
其中,`column_name` 是用于比较的列名,`value1`、`value2` 等是要比较的值,`result1`、`result2` 等是对应的结果,`default_result` 是如果没有匹配到任何条件时的默认结果。`input_value` 是传入的值,`condition` 则是用于比较的条件。
例如,假设有一个表 `students` 包含学生的姓名和分数,现在需要根据输入的学生姓名来返回对应的分数,可以使用以下 SQL 语句:
```sql
SELECT
CASE
WHEN name = 'Tom' THEN score
WHEN name = 'Jerry' THEN score
ELSE 0
END
FROM students
WHERE name = 'Tom';
```
这里,如果输入的学生姓名是 `'Tom'` 或 `'Jerry'`,则返回对应的分数 `score`;否则返回默认值 `0`。同时,只返回学生姓名为 `'Tom'` 的记录。