2012-04-09 11 views
0

私は結合クエリに問題があります。私の問題は次のとおりです。Mysql join query他のテーブルのIDを持つユーザーのプロファイルイメージを取得します。

Table: battles 
Fields: id,attacker_id,defender_id 

Table: users 
Fields: id,profile_image 

私は戦いを取得し、他のテーブルから、同様のプロファイル画像を取得するためにクエリを実行したいと思います。

これを単一の方法で実行する方法はありますか、複数の処理を行う必要はありますか?

ありがとうございます。

+0

usersテーブルに2回(2つの異なる目的で)ユーザーバトルテーブルを参加させますか?何か試しましたか? – mishu

+1

これまでのところあなたの質問を提供してください.. – Kurt

答えて

1

私はしばらくお待ちして、あなたが何か試行があったかどうか、私が問題を理解したかどうかを知るために私の最初の質問に答えるかどうかを知りたいと思っていました。しかし、たぶんあなたは出発点がありません。フェッチされますここでの問題は、あなたが二回usersテーブルに参加する必要があるという事実であるので、あなたが

にこのクエリを使用する予定のカラムのエイリアスを作成する必要があります

SELECT 
    a.profile_image as attacker_profile_image, 
    d.profile_image as defender_profile_image 
FROM 
    `battles` b 
LEFT JOIN 
    `users` a 
ON 
    b.`attacker_id` = a.`id` 
LEFT JOIN 
    `users` d 
ON 
    b.`defender_id` = d.`id` 

:ような何かを試してみてください2つのイメージのみを使用する場合は、追加のフィールドを追加する必要があります

+0

ニース、それは動作します。これはまさに私が必要としていたものです。私は単純な結合クエリを理解していますが、2つの結合は私のリーグから少し外れています。ありがとうございますmishuあなたは素晴らしいです! – Ivar

+0

@Ivar ok、私はそれが助けて嬉しいです。 – mishu

関連する問題