Mysql查询语句casewhen
时间: 2024-11-22 14:00:59 浏览: 31
`CASE WHEN` 是 SQL 中的一个条件表达式,主要用于在结果集中根据特定条件返回不同的值。它的语法通常是这样的:
```sql
SELECT column_name,
CASE
WHEN condition THEN result_1
WHEN condition2 THEN result_2
[ ... ]
ELSE default_result
END as new_column_name
FROM table_name;
```
在这个结构中:
- `column_name` 是你想要操作的原始列名。
- `condition` 是判断条件,如果该条件为真,则返回相应的 `result_1` 或 `result_2` 等。
- 如果所有 `WHEN` 子句都不满足,就会执行 `ELSE` 部分,给出默认的结果 `default_result`。
举个例子,如果你想计算某个字段基于另一个字段的值是正数还是负数,你可以这样做:
```sql
SELECT id,
CASE
WHEN salary > 0 THEN 'Positive'
WHEN salary < 0 THEN 'Negative'
ELSE 'Zero'
END as salary_status
FROM employees;
```
这个查询将会返回每个员工的ID,以及他们的工资状态:'Positive', 'Negative', 或 'Zero'。
阅读全文