我寫此查詢,但它給我一個錯誤:甲骨文的SQL * Plus EXCEPT ORA-00907:缺少右括號
select c.sid
from catalog c
where exists ((select p.color from parts p)
except (select p2.color from parts p2 where p2.color != 'Red'));
ORA-00907:缺少右括號
,你能告訴我在哪裏是不正確的?
目錄:
SID PID COST
1 3 .5
1 4 .5
1 8 11.7
2 3 .55
2 8 7.95
2 1 16.5
3 8 12.5
3 9 1
4 5 2.2
4 6 1247548.23
4 7 1247548.23
部分:
PID PNAME COLOR
1 Left Handed Bacon Stretcher Cover Red
2 Smoke Shifter End Black
3 Acme Widget Washer Red
4 Acme Widget Washer Silver
5 I Brake for Crop Circles Sticker Translucent
6 Anti-Gravity Turbine Generator Cyan
7 Anti-Gravity Turbine Generator Magenta
8 Fire Hydrant Cap Red
9 7 Segment Display Green
對於初學者,您的EXISTS子句根本不連接到目錄表C.另外,EXCEPT在oracle中被稱爲MINUS。你可以請你發佈你的數據結構和一些示例數據,以及你想要這個查詢來完成什麼?您可以編輯您的答案以添加此信息。 –
@NWest我添加了信息 ,我想知道只供應紅色部分的供應商sid –