如何在mysql PDO中联接4个表?

时间:2019-01-01 12:38:29

标签: php mysql pdo

我有4张桌子,如下所示:

1)课程

   | IDPrimary Key | Name
   -------------------------------
   | 1                  | Country 1
   | 2                  | Country 2
   | 3                  | Course 3

2)国家

   | ID - > Primary Key | Name           | country_id
   ---------------------------------------------------
   | 1                  | University 1   | 1
   | 2                  | University 2   | 1
   | 3                  | University 3   | 3

3)大学

   | ID - > Primary Key | university_id  | course_id
   ----------------------------------------------
   | 1                  | 1              | 2
   | 2                  | 3              | 2
   | 3                  | 3              | 3

4)大学课程

country_id

现在,我需要在 核心PHP 中为Android应用创建一个 REST API ,因为我将获得两个参数 < em> course_id country_id = "3,4,5" 。两者均包含多个值,例如 course_id = "1,6,8" SELECT * FROM universities LEFT JOIN countries ON countries.id = universities.country_id LEFT JOIN university_courses ON universiity_courses.university_id = universities.id LEFT JOIN courses ON courses.id = university_courses.course_id WHERE FIND_IN_SET(universities.country_id, ?) AND FIND_IN_SET(university_courses.course_id, ?)

我必须根据 国家 来回复所有与 相关的大学 课程

我已经尝试过下面的查询,但是我没有得到想要的输出,所以如果有人对我的问题有想法请帮助我。

course_id = 1,2

如果country_id = 2,3| university_id | | 3 | ,我期望的输出应该是:

{{1}}

0 个答案:

没有答案