MySql常用函数之 case when then

98 阅读1分钟

CASE WHEN 语句是 MySQL 中常用的条件表达式,用于根据条件对结果进行条件性的赋值或处理。其基本语法如下:

CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ...
    ELSE default_result
END

其中:

  • condition1, condition2, ... 是条件表达式,可以是任何返回布尔值的表达式。
  • result1, result2, ... 是满足条件时返回的结果。
  • default_result 是当没有条件满足时返回的默认结果(可选)。

例如,假设我们有一个名为 students 的表,包含 idnamescore 三列,我们想要根据学生的分数判断其等级,并输出相应的等级标识。我们可以使用 CASE WHEN 语句来实现:

SELECT
    id,
    name,
    score,
    CASE
        WHEN score >= 90 THEN 'A'
        WHEN score >= 80 THEN 'B'
        WHEN score >= 70 THEN 'C'
        ELSE 'D'
    END AS grade
FROM students;

这将根据学生的分数将其等级输出为 A、B、C 或 D,如果没有条件满足,则输出默认的等级 D。