对结果表的SQL查询

时间:2013-10-19 08:46:57

标签: mysql sql

我有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

但他们是一个更好或更快的方法来达到这个目标还是这个方法足够好?

1 个答案:

答案 0 :(得分:0)

查询看起来很好,但请确保以下所有列都已正确编入索引

instructors.in_id,
instructors_config.in_id ,
teach.in_id and 
teach.cs_id