使用集合运算符的SQL查询

使用集合运算符的SQL查询,sql,oracle,Sql,Oracle,使用SET命令,显示区域1中没有位置的所有国家/地区。 仅显示国家/地区id 这是我的问题,它是错误的。我想不出来 SELECT c.country_id FROM Countries c WHERE r.region_id = 1 MINUS SELECT c2.country_id FROM Countries c2 WHERE l.location_id IS NULL; 您可以使用国家和位置表,如下所示: SELECT c.country_id FROM Countries c WHE

使用SET命令,显示区域1中没有位置的所有国家/地区。 仅显示国家/地区id

这是我的问题,它是错误的。我想不出来

SELECT c.country_id
FROM Countries c
WHERE r.region_id = 1
MINUS
SELECT c2.country_id
FROM Countries c2
WHERE l.location_id IS NULL;

您可以使用
国家
位置
表,如下所示:

SELECT c.country_id
FROM Countries c
WHERE c.region_id = 1
MINUS
SELECT c2.country_id
FROM location c2;

为什么使用
l.location\u id
?它应该是
c2.location\u id
,也应该是
c.region\u id
而不是
r.region\u id
这让我很困惑,因为location\u id不在国家表中,它在位置表中,那么region\u id呢?请分享所有相关表格的结构、样本数据和预期输出。是的,你是对的,它的c区域_idI在问题上添加了图像