📜  MySQL CASE表达式(1)

📅  最后修改于: 2023-12-03 14:44:26.766000             🧑  作者: Mango

MySQL CASE表达式

MySQL CASE表达式是一种条件表达式,它允许程序员在SQL语句中根据条件进行数据操作。

语法
CASE value
    WHEN compare_value1 THEN result1
    WHEN compare_value2 THEN result2
    ...
    ELSE default_result
END
参数说明
  • value:要检查的值
  • compare_value1, compare_value2:与value进行比较的值
  • result1, result2:如果value等于compare_value1, compare_value2中的某个值,则返回该值
  • default_result:如果value与所有compare_value都不匹配,则返回default_result
用例

假设我们有以下一个表:

| id | score | | --- | ----- | | 1 | 80 | | 2 | 65 | | 3 | 90 | | 4 | 50 | | 5 | 75 |

现在我们想要按照不同的分数段将学生划分等级。

SELECT id, score,
    CASE
        WHEN score >= 90 THEN 'A'
        WHEN score >= 80 AND score < 90 THEN 'B'
        WHEN score >= 70 AND score < 80 THEN 'C'
        WHEN score >= 60 AND score < 70 THEN 'D'
        ELSE 'F'
    END AS grade
FROM student;
代码说明

以上代码会将各个分数段的学生等级进行区分。

总结

MySQL CASE表达式是一种很有用的条件表达式,它的灵活性使程序员能够在SQL语句中进行多种操作和统计数据。在实际使用中,我们需要注意CASE表达式中的各种参数和语法格式,从而正确地进行数据操作和计算等。