本题目要求编写SQL语句,查询显示2008年每门课程期末成绩的平均分(Avg),四舍五入包保留两位小数,显示课程号与平均分,并按分数降序排列。
时间: 2023-06-01 22:05:18 浏览: 83
以下是SQL语句:
SELECT course_id, ROUND(AVG(score), 2) as Avg
FROM scores
WHERE year = 2008
GROUP BY course_id
ORDER BY Avg DESC;
相关问题
用mysql显示2008年每门课程期末成绩的平均分(Avg),四舍五入包保留两位小数,显示课程号与平均分,并按降序排列
要在MySQL中显示2008年每门课程期末成绩的平均分(Avg),并按降序排列,可以使用以下SQL查询语句:
```sql
SELECT 课程号, ROUND(AVG(期末成绩), 2) AS 平均分
FROM 成绩表
WHERE 年份 = 2008
GROUP BY 课程号
ORDER BY 平均分 DESC;
```
请将上述查询语句中的`成绩表`替换为您实际的表名,`课程号`替换为您实际表中课程号的字段名,`期末成绩`替换为实际表中期末成绩的字段名。执行该查询语句后,将按照降序排列显示每门课程的课程号和平均分(四舍五入保留两位小数)。
显示2008年每门课程期末成绩的平均分,显示课程号与平均分,并按降序排列 提示:2008年对应2007-2008-2和2008-2009-1两个学期。
为了计算并显示2008年每门课程的期末成绩平均分,首先需要一个包含学生成绩的数据集,其中包括课程号、学生名以及对应学期的成绩信息。假设我们有一个名为`course_scores`的数据表,其中字段有`course_id`(课程号)、`semester`(学期)和`final_score`(期末成绩)。以下是查询步骤:
1. 确定2008年的学期范围:
- 学期开始于8月,结束于次年7月,所以2007-2008-2对应的是2008年8月至2009年7月,而2008-2009-1则是2008年9月至2009年1月。
2. 编写SQL查询语句:
```sql
SELECT course_id, AVG(final_score) as average_score
FROM course_scores
WHERE semester IN ('2007-2008-2', '2008-2009-1')
GROUP BY course_id
ORDER BY average_score DESC;
```
这个查询会首先筛选出所有2008年相关的学期,然后对每个课程的期末成绩求平均,最后按照平均成绩从高到低排序。
阅读全文