2017-07-13 35 views
0

私は2つのテーブルを持っています。私は表2を2回参照する表1を使用して、以下の2つの表を結合しようとしています。例えば、私は表1を見れば:グループ2とメンバー7を、それは表2のIDを検索し、私の出力を与える必要があります。MYSQL:同じテーブルを2回参照する同じクエリで2つのテーブルを結合する方法

Group Members Name Name 
    2  7  Blue Dog 

表1

Group Members 
2  7 
3  8 
5  10 

表2

ID  Name 
1  Green 
2  Blue 
3  Yellow 
4  Orange 
5  Red 
6  Elephant 
7  Dog 
8  Cat 
9  Chicken 
10  Mouse 

アドバイスはありますか?ありがとう

+2

質問を詳しく説明してください。それは非常に賢明な質問のように見えません。あなたが試したとうまくいきませんでしたクエリを投稿してみてください。 –

答えて

1
SELECT 
    Table_1.*, 
    g.Name, 
    m.Name 
FROM 
    Table_1 
    INNER JOIN Table_2 AS g ON Table_1.Group=g.ID 
    INNER JOIN Table_2 AS m ON Table_1.Group=m.ID 
WHERE 
    Table_1.Group=2 
    AND Table_1.Member=7 
+0

ありがとうございました。これはうまくいった!また、私のポストを編集してより読みやすく見せてくれてありがとう – CWZY

0

異なる列で2回表2と結合してください。

SELECT t1.*, t2.name AS group_name, t3.name AS member_name 
FROM Table1 AS t1 
JOIN Table2 AS t2 ON t1.group = t2.id 
JOIN Table2 AS t3 ON t1.members = t3.id 
0

その説明から必要なものを正確に伝えるのは難しいが、テーブルのエイリアシングは必要なものになる可能性があります。これは次のように機能します。

SELECT t1.x, t2_1.y, t2_2.z 
FROM table1 AS t1 
JOIN table2 AS t2_1 ON t1.whatever = t2_1.whatever 
JOIN table2 AS t2_2 ON t1.whatever = t2_2.whatever 
... 
関連する問題