📅  最后修改于: 2023-12-03 14:44:26.766000             🧑  作者: Mango
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表达式中的各种参数和语法格式,从而正确地进行数据操作和计算等。