我有 3 个表产品类别和产品类别。
产品表:
ProductID ProductName
1 P1
2 P2
3 P3
类别表:
CategoryID CategoryName
1 C1
2 C2
3 C3
产品分类:
ProductID CategoryID
1 1
1 2
1 3
2 3
3 1
3 2
我需要一个返回超过 1 个类别的产品的查询。根据上面的表格数据,结果将是:
ProductID ProductName
1 P1
3 P3
所以我写了一个查询来获取所有具有多个 CategoryID 的 ProductID,如下所示:
select ProductID,count(CategoryID)
from ProductCategory
group by Productid
having count(CategoryID)>1)
但是,当我尝试使用以下查询显示产品详细信息时,出现错误:
select *
from Product
where ProductID in (
select ProductID,count(CategoryID)
from ProductCategory
group by Productid
having count(CategoryID)>1))
我的查询错了吗?我如何获得属于多个类别的所需产品详细信息?