我有以下数据库的例子:从3个表,其是由映射表连接的MySQL获取数据
的例子是相当多的不言自明的:有在定义的时间段由教师保持课(time_start,time_end)每个时间段 - >课程连接都有自己的max_students数字。
我知道想列出所有课程的3个表格(和max_students)的所有信息。我会那样做(我听说,像,加入表是最快的方法):
SELECT * FROM lesson, teacher, time, teacher_has_lesson, time_has_lesson
WHERE lesson.lesson_id = teacher_has_lesson.lesson_lesson_id
AND teacher.teacher_id = teacher_has_lesson.teacher_teacher_id
AND lesson.lesson_id = time_has_lesson.lesson_lesson_id
AND time.time_id = time_has_lesson.time_time_id
1)这是一个很好的解决方案,如果你只是想加入3个表或有更好的呢?
2.)这个SQL调用只会让我有课,有老师和时间。我还想显示数据库中的课程,但没有老师或时间。我怎样才能做到这一点?