我有3个表(教师, Instructors_config 和教> ):
指导员
instructor_id | first_name | last_name | email | password | status
Instructors_config
instructor_id | profile_pic | fb | twitter | info
教
instructor_id | course_id
教授包含每位教师教授的课程,每位教师可以教授多门课程,每门课程都可以由许多教师讲授(多对多关系)。
我想编写一个接收course_id的函数,并返回教授此课程的所有教师以及教师表中的fist_name和last_name及其来自 Instructor_config 表的信息,目前我使用以下查询来做到这一点,它工作正常:
SELECT instructors.in_id, instructors_config.info, instructors.first_name, instructors.last_name
FROM instructors
INNER JOIN instructors_config ON instructors.in_id = instructors_config.in_id
INNER JOIN teach ON teach.in_id=instructors_config.in_id AND teach.cs_id='.$id
但他们是一个更好或更快的方法来达到这个目标还是这个方法足够好?
答案 0 :(得分:0)
查询看起来很好,但请确保以下所有列都已正确编入索引
instructors.in_id,
instructors_config.in_id ,
teach.in_id and
teach.cs_id