2012-05-10 4 views
1

まずデータベース構造を投稿してください。 表:monsterdata - http://prntscr.com/92eet 表:user_team - http://prntscr.com/92eefSQL - JOINに複数の句がありますか?

は私が欲しいuser_teamのデータ(M1、M2、M3、M4、M5、M6)私は他の情報を取得できるようにmonsterdata.idと照合します。私は何をするために管理することは一つだけのデータ

SELECT * FROM monsterdata LEFT JOIN user_team ON monsterdata.id=user_team.m1 

を取得しました。しかし、私が本当にやりたいこと= user_team.X

これをmonsterdata.idするM2、M3、M4、M5、M6を含めること、です愚かかもしれないが、私はこれを行う方法を理解していないより愚かです。 助けてくれてありがとう!

答えて

3
SELECT * 
    FROM monsterdata LEFT JOIN user_team 
    ON monsterdata.id=user_team.m1 AND/OR 
    monsterdata.id=user_team.m2 AND/OR ... 

ここに行ってください!

1

これを試してください。

SELECT * FROM monsterdata 
LEFT JOIN user_team 
ON (monsterdata.id=user_team.m1 
OR monsterdata.id=user_team.m2 
OR monsterdata.id=user_team.m3 
OR monsterdata.id=user_team.m4 
OR monsterdata.id=user_team.m5 
OR monsterdata.id=user_team.m6) 
+0

トリックをした@JonasEverest –

0

あなたは、この条件を使用することができます

SELECT * FROM monsterdata 
LEFT JOIN user_team 
ON monsterdata.id = COALESCE(
    user_team.m1,user_team.m2,user_team.m3, 
    user_team.m4,user_team.m5,user_team.m6) 
関連する問題