mysql的case函数
时间: 2023-10-10 10:13:37 浏览: 94
MySQL中的CASE函数是一种条件语句,用于根据一个或多个条件来返回不同的结果。它有两种语法格式:
1. 简单CASE函数
简单CASE函数基于一个表达式来返回不同的结果。其语法如下:
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE default_result
END
其中,expression是要进行比较的表达式;value1、value2等表示表达式可能的取值;result1、result2等表示对应取值的结果;default_result是当expression的值不在value范围内时返回的默认结果。
例如,以下查询语句将根据age字段的值返回不同的结果:
SELECT
CASE age
WHEN 0 THEN '未知'
WHEN 1 THEN '儿童'
WHEN 2 THEN '青少年'
WHEN 3 THEN '成年人'
ELSE '老年人'
END AS age_group
FROM your_table;
2. 搜索CASE函数
搜索CASE函数基于多个条件来返回不同的结果。其语法如下:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
其中,condition1、condition2等是要进行比较的条件;result1、result2等表示对应条件的结果;default_result是当所有条件都不满足时返回的默认结果。
例如,以下查询语句将根据age字段的值返回不同的结果:
SELECT
CASE
WHEN age < 18 THEN '未成年人'
WHEN age >= 18 AND age < 60 THEN '成年人'
ELSE '老年人'
END AS age_group
FROM your_table;
阅读全文