2011-01-26 34 views
0

enter image description here從4桌

檢索數據我有這四個表假設環信息表由五個字段(jewelry_id,ring_id,圖像,類型,brand_id)

注意,表的品牌有它的外鍵的環表和環和樣式都在ring_style表中具有外鍵。現在我想從這四個表 (ring_id,圖像,類型,品牌,風格)中檢索以下數據,但沒有得到任何幫助將不勝感激。

回答

1
SELECT 
    ring_id, image, type, 
    brand, 
    style 
FROM  ring 
LEFT JOIN brand ON ring.brand_id = brand.brand_id 
LEFT JOIN ring_style ON ring.jewelry_id = ring_style.jewelry_id 
    LEFT JOIN style ON ring_style.style_id = style.style_id 

注意,每個環會出現一次或多次。當有多於一個ring_style記錄時,它會出現多次。

1

您必須使用SQL命令JOIN

一個例子擺脫環和品牌信息與一個查詢中使用:

SELECT * FROM ring 
JOIN brand ON ring.brand_id = brand.brand_id; 
WHERE ring.jewelry_id = 123456 

使用多個連接在一個查詢來獲取連接多個表在一個查詢中。

2

您只需使用與它們相關的列來加入每個表格。

SELECT 
    ring.ring_id, 
    style.image, 
    ring.type, 
    brand.brand, 
    style.style 
FROM 
    brand 
INNER JOIN 
    ring 
ON 
    brand.brand_id = ring.brand_id 
INNER JOIN 
    ring_style 
ON 
    ring.jewelry_id = ring_style.jewelry_id 
INNER JOIN 
    style 
ON 
    ring_style.style_id = style.style_id 
+0

我有兩種類型的戒指(婚禮,訂婚)我應該在哪裏檢查類型相同的情況。即如果我想檢查相同的記錄反對婚禮,那麼我如何更新查詢 – hunter 2011-01-26 11:24:02