我正在使用MySQL。这是我的架构:
供应商(sid:整数,sname:字符串,地址字符串)
零件(pid:整数,pname:字符串,color:字符串)
目录(sid:整数,pid:整数,成本:实数)
(主键以粗体显示)
我正在尝试编写查询以选择至少两个供应商制造的所有零件:
-- Find the pids of parts supplied by at least two different suppliers.
SELECT c1.pid -- select the pid
FROM Catalog AS c1 -- from the Catalog table
WHERE c1.pid IN ( -- where that pid is in the set:
SELECT c2.pid -- of pids
FROM Catalog AS c2 -- from catalog
WHERE c2.pid = c1.pid AND COUNT(c2.sid) >= 2 -- where there are at least two corresponding sids
);
首先,我什至会以正确的方式这样做吗?
其次,我得到这个错误:
1111-无效使用组功能
我究竟做错了什么?