关于使用 SQL 查询获取结果,我的数据库有一点问题。我有 5 个表,我想通过特定的连接来获取有关它的所有信息。有我的桌子:
课程
- 标识(整数)
- 课程名称(varchar)
- id_class (int)
- id_section (int)
教师
- 标识(整数)
- 名称(varchar)
课老师
- 标识(整数)
- id_lesson (int)
- id_teacher (int)
班级
- 标识(整数)
- 类(varchar)
部分
- 标识(整数)
- 部分(varchar)
事实是我的课可以有不止一位老师,所以我在他们两个之间制作了一个 1-n 关系表。
每节课只有一节课和一节课,所以我不必与新表建立链接。
我想我的做法是好的。当我在我的数据库中选择信息时,一切正常,除非我想使用“WHERE”子句来指定一个或多个参数。
这是我的查询:
SELECT teachers.name, lessons.lesson_name, classes.classe, sections.section FROM lesson_teacher
JOIN teachers ON lesson_teacher.id_teacher = teachers.id
JOIN lesson ON lesson_teacher.id_lesson = lessons.id
LEFT OUTER JOIN sections ON lesson.id_section = sections.id
LEFT OUTER JOIN classes ON lesson.id_classe = classes.id
我的所有数据都有 4 列,我的课程显示得很好,一切正常。
为什么,当我使用“WHERE”子句时,我的 return 中没有行?前任:
WHERE classes.classe = 'BMMP33'