我有两个表MySQL查询与多个条件
1) Student
id | Student_name
--------------------
1 | John
2 | Joy
3 | Raju
2) Category
id | category_name
-------------------------
1 | Maths Fest
2 | Science Fest
3 | IT Fest
4 | English Fest
5 | Cultural Fest
3) Student_category
id | student_id | category_id
------------------------------------
1 | 1 | 4
2 | 1 | 5
3 | 1 | 1
4 | 2 | 1
5 | 2 | 4
6 | 3 | 1
7 | 3 | 5
8 | 3 | 3
我需要编写一个查询来选择谁参加了在这两个数学巨星&英语巨星的学生。
我用这个查询
SELECT distinct student_name
FROM student A,student_category B
WHERE A.id=B.student_id
and B.category_id IN ('1','4')
,但它给谁参加数学巨星或英文巨星结果的学生。 请帮我
这是好的,但如果更多的类别,然后几乎不可能,我需要动态生成此查询。 – Shameem
@jan一些修正:SELECT student_name FROM学生甲 INNER JOIN student_category乙ON A.id = B.student_id AND B.category_id IN(1,4) GROUP BY student_name HAVING COUNT(*)= 2 – Shashikala
@Webbie,第二个SQL是根据Shameem所述的扩展请求 – Jan