これは私のクエリです:
-- Sids of suppliers who supply a green part AND a red part
(SELECT Suppliers.sid
FROM Suppliers
JOIN Catalog ON Catalog.sid = Suppliers.sid
JOIN Parts ON Parts.pid = Catalog.pid
WHERE Parts.color = "red")
INTERSECT
(SELECT Suppliers.sid
FROM Suppliers
JOIN Catalog ON Catalog.sid = Suppliers.sid
JOIN Parts ON Parts.pid = Catalog.pid
WHERE Parts.color = "green");
これはエラーです:
エラー 1064 (42000): SQL 構文にエラーがあります。6 行目の「INTERSECT (SELECT Suppliers.sid FROM Suppliers JOIN Catalog ON Catalog.sid = Sup」の近くで使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。
私は何を間違っていますか?
これはスキーマです:
サプライヤー ( sid: 整数、sname: 文字列、アドレス文字列)
パーツ ( pid: 整数、pname: 文字列、色: 文字列)
Catalog( sid: 整数、pid: 整数、コスト: 実数)
太字= 主キー