需要数据库查询帮助
Database Query Help needed
所以这是我拥有的数据库:https://imgur.com/EmQm9vx
自从我上次使用 MySQL 数据库以来已经有一段时间了,所以我有一些问题需要解决。
首先,我需要编写一个查询,可以显示学生的姓名和他们注册的 class。我正在尝试使用 WHERE 做一些事情,但我迷路了很多。
解决方案:使用 JOIN 是可行的方法,因为您需要连接 3 个表。
从第一个问题开始。我们有一个多对多的关系,其中 student_class 将每个 student_id 链接到 class_id,但是名字存储在链接的学生 table 和 class [=17 中=].所以我们需要加入所有三个 tables.
SELECT student.name, class.name
FROM student
JOIN student_class
ON student.id = student_class.student_id
JOIN class
ON class.id = student_class.class_id
;
您需要根据学生ID将学生table与class_registrationtable内部加入,然后将class_registrationtable与class加入table 基于 classID.
SELECT student.Name, class.ClassName
FROM student
inner join class_registration
ON student.id = class_registration.StudentId
inner join class
ON class.classid = class_registration.ClassId
;
所以这是我拥有的数据库:https://imgur.com/EmQm9vx
自从我上次使用 MySQL 数据库以来已经有一段时间了,所以我有一些问题需要解决。
首先,我需要编写一个查询,可以显示学生的姓名和他们注册的 class。我正在尝试使用 WHERE 做一些事情,但我迷路了很多。
解决方案:使用 JOIN 是可行的方法,因为您需要连接 3 个表。
从第一个问题开始。我们有一个多对多的关系,其中 student_class 将每个 student_id 链接到 class_id,但是名字存储在链接的学生 table 和 class [=17 中=].所以我们需要加入所有三个 tables.
SELECT student.name, class.name
FROM student
JOIN student_class
ON student.id = student_class.student_id
JOIN class
ON class.id = student_class.class_id
;
您需要根据学生ID将学生table与class_registrationtable内部加入,然后将class_registrationtable与class加入table 基于 classID.
SELECT student.Name, class.ClassName
FROM student
inner join class_registration
ON student.id = class_registration.StudentId
inner join class
ON class.classid = class_registration.ClassId
;