我已就該下表許多一對多:sql中關於選擇多到許多不按預期工作
table product:
prd_cod (pk)
cat_cod (fk)
prd_nome
table description_characteristic:
prd_cod(fk)
id_characteristic(fk)
description
table characteristic:
id_characteristic(pk)
name
我們假設cat_cod將是1,我想展現這樣的數據:
我已經做了以下這個選擇來解決我的問題:
select p.prd_cod,p.prd_name,c.name_characteristic,dc.description
from product p,description_characteristic dc, characteristic c
where p.prd_cod = dc.prd_cod and
dc.id_ccharacteristic = c.id_characteristic and
p.cat_cod = 1
但數據被證明是這樣的:
Prd_cod Prd_name name_characteristic descript
1 pen Color pink
1 Pen manufacturer kingston
1 Pen type brush
1 Pen weight 0.020
我想要顯示的結果是這樣的:
Prd_cod Prd_name name_characteristic descript name_characteristic descript
1 pen Color pink type brush
2 Pen-drive manufacturer kingston weight 0.020
我不能做一個選擇來解決這個 請我需要幫助 謝謝大家
選擇適當的數據的行爲,並以某種特定的格式顯示它是兩個獨立的步驟。你的目標不應該是用SQL查詢產生輸出。像這樣定義你的問題,答案是不明確的;如果產品有1或3個相關描述而不是2個,你會怎麼做? –