У меня есть 3 таблицы: события, студенты и parent_student_relation.Получить данные третьей таблицы в mysql
события
id | class_id | title
----------------------
1 | 16 | ABC
2 | 17 | JKL
3 | 18 | XYZ
студентов
id | class_id | name
----------------------
5 | 18 | StudentName1
6 | 17 | StudentName2
7 | 16 | StudentName3
parent_student_relation
student_id | parent_id
----------------------
4 | 10
5 | 10
6 | 11
7 | 11
Теперь я хочу получить данные от events
, где я передаю parent_id = 10
, затем получите следующий вывод.
Выход
id | class_id | title
----------------------
3 | 18 | XYZ
И я прохожу parent_id = 11
затем получить следующий вывод.
Выход
id | class_id | title
----------------------
1 | 16 | ABC
2 | 17 | JKL
Я попытался с помощью следующего кода:
$q_student = "SELECT student_id FROM parent_student_relation WHERE parent_id = " . $parent_id;
$q_class = "SELECT class_id FROM students WHERE id IN($q_student) GROUP BY class_id";
$q = "SELECT * FROM events WHERE class_id IN($q_class)";
Так что я могу получить идеальный выход в $query = mysql_query($q);
Но я хочу, чтобы все только один присоединиться к запросу. Так как это можно сделать? Или это возможно или нет?
получить дубликаты данных .. – kupendra
использование group_by FIELD – Droid
Где использовать ??? – kupendra