Ich habe zwei TabellenMySQL Query mit mehrere Bedingung
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
Ich brauche eine Abfrage zu schreiben Studenten auszuwählen, die sowohl in der Mathematik fest & Englisch Fest teilzunehmen.
i verwenden diese Abfrage
SELECT distinct student_name
FROM student A,student_category B
WHERE A.id=B.student_id
and B.category_id IN ('1','4')
aber es Ergebnis Student, der in Mathe fest ODER Englisch Fest teilnehmen geben. bitte helfen Sie mir
Das ist in Ordnung, aber wenn mehr Kategorien, dann ist es praktisch nicht möglich, muss ich diese Abfrage dynamisch generieren. – Shameem
@jan einige Korrekturen: SELECT student_name FROM A Student INNER JOIN student_category B ON A.id = B.student_id UND B.category_id IN (1, 4) GROUP BY student_name HAVING COUNT (*) = 2 – Shashikala
@Webbie, zweites SQL ist für erweiterte Anfrage wie von Shameem angegeben – Jan