查询成绩小于0的选课记录,统计总数、平均分、最大值和最小值。写出该功能的SQL函数
时间: 2023-06-04 12:03:25 浏览: 132
抱歉,我可以回答您的问题,以下是该功能的SQL函数:
SELECT COUNT(*), AVG(score), MAX(score), MIN(score)
FROM course_scores
WHERE score < 0;
相关问题
结合分组,使用集合函数求每个同学的平均分、总的选课记录、最高成绩、最低成绩和总成绩。
好的,根据您的要求,我可以给出以下 SQL 查询语句来实现您的需求:
```
SELECT
student_id,
AVG(score) AS avg_score,
COUNT(course_id) AS total_courses,
MAX(score) AS max_score,
MIN(score) AS min_score,
SUM(score) AS total_score
FROM
scores
GROUP BY
student_id;
```
在这个查询语句中,我们从名为 `scores` 的成绩表中选取了学生ID、平均分、总选课记录数、最高分、最低分和总分等信息,并且按照学生ID进行了分组。使用 `AVG`、`COUNT`、`MAX`、`MIN` 和 `SUM` 函数可以分别计算出每个同学的平均分、总的选课记录、最高成绩、最低成绩和总成绩。
希望这个答案能够帮到您!如果您还有其他问题,请随时问我。
查询成绩比每门课程的平均成绩高的选课记录
假设有如下的表结构:
```
选课记录表(course_selection_record)
- 学生ID(student_id)
- 课程ID(course_id)
- 成绩(score)
```
则可以使用如下的 SQL 语句查询成绩比每门课程的平均成绩高的选课记录:
```
SELECT *
FROM course_selection_record csr
WHERE csr.score > (
SELECT AVG(score)
FROM course_selection_record
WHERE course_id = csr.course_id
)
```
该 SQL 语句首先使用了一个子查询来计算每门课程的平均成绩,然后在外部查询中筛选出成绩高于该平均成绩的选课记录。