我有3張桌子。這些表是這樣的:如何在同一主鍵上連接3個表?
表酒店
id(pk)
hotel_code
hotel_name
hotel_address
表hotel_description
id(pk)
hotel_id(fk from table hotel)
hotel_title
hotel_description
表hotel_image
id(pk)
hotel_id(fk from table hotel)
image_title
image_description
我查詢加入3表是這樣的:
SELECT a.hotel_code, a.hotel_name, a.address, b.hotel_title, b.hotel_description, c.image_title, c.image_url
FROM hotel a
JOIN hotel_description b ON a.id = b.hotel_id
JOIN hotel_image c ON a.id = c.hotel_id
WHERE a.hotel_code = 'IDJKT_00001'
上面運行查詢的結果是這樣的: http://snag.gy/nw541.jpg
它看起來雙倍數據
如何解決我的問題?
謝謝
您的預期數據格式是什麼? –
我不確定,我認爲'b'和'c'之間缺少某些東西,請嘗試將此添加到'where子句'AND b.hotel_id = c.hotel_id'? – Yazan
@Yazan,'SELECT a.hotel_code,a.hotel_name,b.hotel_title,b.hotel_description,c.image_title,c.image_url 從酒店a JOIN hotel_description b ON a.id = b.hotel_id JOIN hotel_image c ON a.id = c.hotel_id WHERE a.hotel_code ='IDJKT_00001'和b.hotel_id = c.hotel_id'。像那樣?結果是一樣的 –