我有以下表格:

Suppliers(Sno, Sname, Address)
Parts(Pno, Pname, Colour)
Catalogue(Sno, Pno, Price)

我想找到供应每一个零件的供应商的sno。
到目前为止,我写的是:
SELECT s.sname
FROM suppliers s JOIN catalogue c
USING s.sno

现在我该怎么写“供应每一个零件的供应商”?
我正在考虑从parts=count(pno)中获取每个供应商sno的count(*)。有人能给我一个提示/写下平等的第一部分吗?
谢谢!

最佳答案

你很接近。您需要添加带有子查询的GROUP BY/HAVING子句:

 group by s.sname having count(*) = (select count(*) from catalogue)

09-03 23:15