如何建立一个复杂的sql查询?



这里是数据库设计

我想从product_spec_data表中获取与category_id为5的产品相关的记录。

请帮我查询一下数据库…

所有的关系都清楚地安排好了,跨表的简单连接就可以了。

SELECT psd.*
FROM product_spec_data psd
INNER JOIN product_spec_values psv ON psd.id = psv.product_spec_data_id
INNER JOIN products prod ON psv.product_id = prod.id
INNER JOIN categories cat ON prod.category_id = cat.id
-- with category id = 5
WHERE cat.id = 5;

我不知道你所说的复杂查询是什么意思。我想你的问题不完整。我认为你的问题的查询(如果它是T-SQL)将如下

select d.* 
from product_spec_data d
left outer join product_spec_values v on d.id=v.product_spec_data_id
left outer join products p on v.product_id=p.id
where p.category_id=5

(我认为在MySQL中上述语法也将保持不变,您可以在MySQL中删除[outer]子句)

相关内容

  • 没有找到相关文章

最新更新