2012-12-04 3 views
2

У меня есть 3 таблицы:SQL присоединиться и повторить результат?

1)participant 
    *********** 
    +id_participant 
    +id_poste 
    +name 
    +email 

2) profile_formaion 
    **************** 
    +id_poste 
    +id_formation 

3) formation 
    ********* 
    +id_formation 
    +lable 

EXAMPLE:

ДАННЫЕ: участник

1 | 2 | user1 | [email protected] 

ДАННЫЕ: profile_formation

2 | 3 
2 | 4 

ДАННЫЕ: формирование

1 |lable1 
2 |lable2 
3 |lable3 
4 |lable4 

Любой может мне помочь Как я могу использовать SQL заявление (Join), чтобы получить результат:

DATA: результат

1 | 2 | user1 | [email protected] | label3 
1 | 2 | user1 | [email protected] | label4 

Благодарности

ответ

5
SELECT 
    participant.id_participant, 
    participant.id_poste, 
    participant.name, 
    participant.email, 
    formation.lable 
FROM participant 
INNER JOIN profile_formaion ON 
    profile_formaion.id_poste = participant.id_poste 
INNER JOIN formation ON 
    formation.id_formation = profile_formaion.id_formation 
+0

+1, здесь [Рабочая демонстрация] (http://www.sqlfiddle.com/) #! 2/90c07/2) –

1

Это должно сделать это

select p.*, f.lable 
from participant p 
join profile_formaion pf on pf.id_poste = p.id_poste 
join formation f on f.id_formation = pf.id_formation 
1

ВЫБЕРИТЕ стр. id_participant, стр. id_poste, стр. name, p. email, f. lable FROM участник p join profile_formaion pf на p.id_poste = pf.id_poste объединение формации f на pf.id_formation = f.id_formation

Смежные вопросы