oracle如何获得这两者的交集

oracle如何获得这两者的交集,oracle,Oracle,我肯定美国队也参加了,但结果显示什么都没有,哪里错了 我不能添加图片。 river_geo有河流、国家、省。 湖有湖、国家、省 “在三个以上的省份旁边有湖泊”是指湖泊有三个以上的省份,但这些省份属于同一个国家 我想找一个拥有这种湖泊并且有3条以上河流的国家你正在寻找一组河流数量与湖泊数量相同的国家(我是从你的表格名称推断出来的)。似乎不太可能有很多这样的情况。如果你真的想寻找拥有3条以上河流和3个以上湖泊的国家,你需要从你的选择列表中删除计数(河流)和计数(省份)。我想找到拥有3条以上河流和湖泊

我肯定美国队也参加了,但结果显示什么都没有,哪里错了

我不能添加图片。 river_geo有河流、国家、省。 湖有湖、国家、省

“在三个以上的省份旁边有湖泊”是指湖泊有三个以上的省份,但这些省份属于同一个国家


我想找一个拥有这种湖泊并且有3条以上河流的国家

你正在寻找一组河流数量与湖泊数量相同的国家(我是从你的表格名称推断出来的)。似乎不太可能有很多这样的情况。如果你真的想寻找拥有3条以上河流和3个以上湖泊的国家,你需要从你的
选择列表中删除
计数(河流)
计数(省份)
。我想找到拥有3条以上河流和湖泊的国家,这些河流和湖泊与3个以上省份相邻。但是,如果我删除计数,如何添加此限制?如果您能编辑您的问题来描述您试图实现的目标,并发布一些示例数据和预期结果,这将非常有用。一个可复制的测试用例(DDL、DML、预期结果等)将是理想的。我不知道你所说的“三个以上省份的湖泊”是什么意思。你的意思是你想要在
geo_lake
中有3个以上不同省份值的国家吗?我的想法是找到国家有3条以上的河流,然后找到国家有这种湖泊,然后进行交叉。我的答案是:
select DISTINCT country, count(river)   
from geo_river
group by country
having count(river) > 3
INTERSECT
select DISTINCT country, count(province)
from geo_lake
group by lake,country
having count(province) > 3;