在 MySQL 中,`CASE WHEN` 是一个非常实用的条件判断工具,类似于编程中的 `if-else` 语句。它可以帮助我们根据不同条件返回不同的值,让查询更加灵活和智能。例如,在处理用户数据时,我们可以用它来判断用户的年龄区间,并输出对应的标签。
语法分为两种形式:简单 `CASE` 和搜索 `CASE`。简单 `CASE` 的格式为:
```sql
CASE column_name
WHEN value1 THEN result1
WHEN value2 THEN result2
ELSE default_result
END
```
而搜索 `CASE` 则更灵活,允许使用复杂的逻辑表达式:
```sql
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE default_result
END
```
比如,我们可以通过以下代码将订单金额分成不同等级:
```sql
SELECT order_id,
CASE
WHEN amount < 100 THEN '低'
WHEN amount BETWEEN 100 AND 500 THEN '中'
ELSE '高'
END AS level
FROM orders;
```
这样,你就能轻松对数据进行分类啦!🎉