在 MySQL 数据库中,假设 db_sc 数据库包含以下四张表:

  • course 表:包含 Cno, Cname, Chours, Credit, tno 字段
  • sc 表:包含 Sno, Cno, Score 字段
  • student 表:包含 Sno, Sname, Ssex, Sage, Sclass, Scold 字段
  • teacher 表:包含 tno, tname, tsex, trank, tempdate 字段

现在需要查询 sc 表中 Score 最高的信息,并显示 Sno、Sname 和 Score。可以使用以下 SQL 语句实现:

SELECT s.Sno, s.Sname, MAX(sc.Score) AS Score
FROM sc
INNER JOIN student s ON s.Sno = sc.Sno
GROUP BY s.Sno, s.Sname
ORDER BY Score DESC
LIMIT 1;

SQL 语句解释:

  1. INNER JOIN: 使用 INNER JOIN 将 sc 表和 student 表连接起来,根据学号 (Sno) 将它们关联起来,以便查询到学生的姓名和成绩。
  2. GROUP BY: 使用 GROUP BY 对学生的学号 (Sno) 和姓名 (Sname) 进行分组,以便使用 MAX 函数获取每个学生的最高分数。
  3. MAX(sc.Score) AS Score: 使用 MAX 函数获取每个学生在 sc 表中的最高分数,并使用 AS 给最高分数的列取一个别名叫做 Score。
  4. SELECT: 在 SELECT 语句中,选择学生的学号、姓名和最高分数 (Score)。
  5. ORDER BY Score DESC: 使用 ORDER BY 对最高分数进行降序排序 (DESC),方便查看最高分数。
  6. LIMIT 1: 使用 LIMIT 1 来限制查询结果只返回最高分数的那一行。

通过以上 SQL 语句,可以查询到 sc 表中 Score 最高信息的 Sno、Sname 和 Score。

MySQL 查询最高成绩的学生信息 - SQL 语句示例

原文地址: https://www.cveoy.top/t/topic/oocE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录