2016-06-13 11 views
0

内の別のテーブルの複数の値を持つ列を持つ値を表示するには:

enter image description hereはどのように私はテーブルを持っているMySQLの



そして、Bテーブル:

enter image description here



最終1、 Cテーブル:

enter image description here


私はこのようになるためにそれらを表示する必要があります。

performance_id | quiz_id 
________________________ 
22    | 65 
23    | null 
24    | 43 
25    | null 

私は参加しようとしたが、それは間違った結果を示します。クイズIDは表示されません。私はこれを試してみました:

SELECT A.performance_id, C.quiz_id 
FROM A 
LEFT JOIN B ON A.performance_id=B.performance_id 
LEFT JOIN C ON B.phc_id = C.phc_id 
group BY A.performance_id; 

結果:
enter image description here
を、私を助けて感謝

+0

ヒント: 'LEFT JOIN' – Blank

+0

は私の編集した質問@Jens – Jens

+0

で表示複数のquiz_idを得るために '... FROM GROUP_CONCAT(C.quiz_id) 、A.performance_idを選択'を選択し –

答えて

1

使用group_concat

SELECT A.performance_id, group_concat(C.quiz_id) 
FROM A 
LEFT JOIN B ON A.performance_id=B.performance_id 
LEFT JOIN C ON B.phc_id = C.phc_id 
group BY A.performance_id; 

複数のquiz_id

0

この

を試してもらうので
SELECT A.performance_id, group_concat(C.quiz_id) 
FROM A 
LEFT JOIN B ON A.performance_id = B.performance_id 
LEFT JOIN C ON B.phc_id = C.phc_id 
group BY A.performance_id; 

SQL Fiddle

関連する問題