2012-03-23 12 views
0

私は2つのテーブルを持っています。レコードとヴィラテーブル内の別のテーブルの列を取得するには?

レコードテーブル

ID, VID (Villa ID), NAME, PRICE 

ヴィラ表:私はこのSQLを使用して

ID, NAME (Villa NAME), PHOTOS etc. 

SELECT records.id, villa_name AS (SELECT name FROM villas WHERE id = records.vid), records.name 
FROM records WHERE records.id = 5 

が間違って何ですか?マーク・バニスターからIncorporatedの提案、以下:

+0

エラーが発生しますか? –

答えて

1

ここではJOINを使用してください。

SELECT r.id, r.name, v.name 
FROM records r 
INNER JOIN villas v ON v.id = r.vid 
WHERE records.id = 5; 
2

SELECT records.id, records.name AS record_name, villas.name AS villa_name FROM records INNER JOIN villas ON records.vid = villas.id WHERE records.id = 5

編集をお試しください。

+0

+1 'villas.name'のエイリアスを' records.name'と区別する価値があります。 –

+0

良い点。含まれるように編集されました。 – MichaelRushton

関連する問題