2017-10-24 4 views
0

私は次の2つの表があります。TABLE1のMySQLでの値に基づいて、表2に関係のないテーブルからレコードを取得する

 table1 
     id 
     name 
     ownedby 


     table2 
     id 
     ownername 

ここを、表1に、ownedbyが可能0(それが誰によって所有されていない意味する)、またはtable2のid列を参照します。基本的にowenedby> 0

出力を可能にする場合今、私が欲しいのはTABLE1からデータを取得するが、表2からownernameに得ることです:

 1 0 ==>owned by no one 
    2 Barka =======> owned by barka 
+0

idはtable1で何を表していますか? –

+0

ジョインを使用できます。 https://stackoverflow.com/questions/6294778/mysql-quick-breakdown-of-the-types-of-joins –

+0

こんにちは@Harshil、それは自動番号の列です。しかし、テーブルは、テーブル2に対応するレコードがないので、テーブルは全く関連していない可能性があります。 –

答えて

1

次のクエリは動作するはずです(私はそれをテストしていませんでしたが) :

select t1.id, t1.name, 
(case when t1.ownedby = 0 then 'No one' 
    else t2.ownername 
    end) as Ownername 
from table t1 
Left Join table t2 
on t1.ownedby = t2.id 
group by t1.id; 

希望します。

+0

ありがとうHarshil ...それはとても近いです。 Lemmeはそれをちょっと微調整し、うまくいけば、それをaswerとして受け入れます。 –

+0

確か...しかし、まだ動作していない場合は、ここで問題をコメントしてください。 –

関連する問題