我已就该下表许多一对多: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个,你会怎么做? –