mysql编写一段代码,使用case搜索函数,实现判断score成绩数据.若大于等于90分,则提
时间: 2024-03-10 22:46:58 浏览: 22
供“优秀”作为结果;若在80分-89分之间,则提供“良好”作为结果;若在70分-79分之间,则提供“中等”作为结果;若在60分-69分之间,则提供“及格”作为结果;若小于60分,则提供“不及格”作为结果。
以下是使用CASE搜索函数的MySQL代码实现:
```
SELECT
score,
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 AND score <= 89 THEN '良好'
WHEN score >= 70 AND score <= 79 THEN '中等'
WHEN score >= 60 AND score <= 69 THEN '及格'
ELSE '不及格'
END AS result
FROM
score_table;
```
这段代码可以应用于一个名为score_table的表,其中包含成绩数据。在查询中,使用CASE搜索函数对每个成绩进行评估,并将相应的结果作为新列返回。
相关问题
mysql 计算成绩等于60分和成绩等于50分的人数分别有多少,每个人只能出现一次,这个sql怎么写在count函数里面
请查看以下 SQL 语句:
SELECT COUNT(DISTINCT CASE WHEN score = 60 THEN student_id END) AS count_60,
COUNT(DISTINCT CASE WHEN score = 50 THEN student_id END) AS count_50
FROM scores;
这个 SQL 语句中,我们使用了 COUNT 函数和 DISTINCT 关键字,来统计成绩等于 60 分和 50 分的人数。其中,CASE WHEN 条件语句用来进行条件判断,若成绩等于 60 分或 50 分,则返回对应学生的 ID,否则返回 NULL。最后,使用 COUNT(DISTINCT ...) 统计不同学生的 ID 的个数,即为分数等于 60 分或 50 分的人数。
mysql中case函数
MySQL中的CASE函数是一种条件表达式,它允许在查询中根据条件返回不同的值。它可以用于SELECT语句、WHERE子句、ORDER BY子句等地方。
CASE函数有两种形式:简单CASE表达式和搜索CASE表达式。
简单CASE表达式的语法如下:
```
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE result
END
```
搜索CASE表达式的语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,expression或condition可以是任何有效的表达式,value1、value2、...和result1、result2、...则是根据具体情况定义的值和结果。
例如,以下是一个使用CASE函数的例子:
```
SELECT id, name,
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 60 THEN '及格'
ELSE '不及格'
END AS grade
FROM students;
```
这个例子中,根据学生的分数(score)不同,使用CASE函数返回对应的成绩等级(grade)。