2015-07-08 2 views
0

У меня есть три таблицы MySQL как «Курсы», «Модули» и «Course_Managements», как следующее ...Выберите несколько значений из столбца на основе определенного значения из другого столбца

Таблица «Модули» .. .

Module_id Module_title 
    1   Accounting 
    2   Management 
    3   Marketing 

"Курсы" Таблица ...

Course_id Course_title 
    1   CIMA 
    2   aat 
    3   SLIM 
    4   MBA 

"Course_Managements" Таблица ...

CM_id Module_id Course_id 
    1   1   1 
    2   1   2 
    3   2   1 
    4   2   4 
    5   3   3 
    6   3   4 

Я хочу назначить SQL-запрос, выбрав курс ID (Скажем, «1»), то доступны Module_ids должны быть указаны как ... «1» и «2»

Пытаюсь для разработки интерфейса, с помощью которого Пользователь может выбрать курс, тогда он может просматривать модули под ним ...

Может ли кто-нибудь предложить SQL-запрос для этого?

ответ

1

Вы должны принять вход courseId от пользователя и использовать следующий запрос для получения modules.

SELECT * 
FROM Modules 
INNER JOIN Course_Managements ON Modules.Module_id = Course_Managements.Module_id 
WHERE Course_Managements.Course_id = $course_id 
+0

Вы меня РАДЫ ..! Спасибо брат..! – Maharan

0

Запрос

select t2.Course_id, 
t2.Course_title, 
group_concat(t1.Module_title separator ',') as Modules 
from modules t1 
join courses t2 
join course_management t3 
on t1.Module_id=t3.Module_id 
and t2.Course_id=t3.Course_id 
where t2.Course_id=1 
group by t2.Course_id, 
t2.Course_title; 

Fiddle demo here

+0

Thanks Bro. Однако я решил это вчера ..! – Maharan