我有一個MySQL數據庫與一個表'項目'。SQL加入一對多 - 多個表
每個商品在「價格」表格中可以有多個價格,在'圖片'表格中可以有多個圖片。他們都與物品有一對多的關係。
我很想有一個能夠同時獲取所有數據的查詢,但在查詢中,我得到了很多重複的記錄。如果一個項目有3種價格,3張圖片,我得到9行該項目(而不是期望6):
我的查詢:
SELECT * FROM items
LEFT JOIN prices
ON items.item_id = prices.item_id
LEFT JOIN images
ON items.item_id = images.item_id
ORDER BY items.item_id
例如我很想有:
itemid
1 item1 price1 NULL
1 item1 price2 NULL
1 item1 price3 NULL
1 item1 NULL image1
1 item1 NULL image2
1 item1 NULL image3
2 item2 ....
總是會有相同數量的圖像和價格爲給定的項目? – dugas