0

我有两张桌子。一个有一个点 SDO_GEOMETRY,另一个有一个圆形 SDO_GEOMETRY 对象。我想使用 SDO_JOIN 检查表 2 内的表 1 的所有对象。有人可以指导如何编写此查询吗?

我的输出应该如下:

T1  --  T2
1   --  2
2   --  2
2   --  1

这意味着 1 在 2 内,2 在 1 和 2 内

4

1 回答 1

3

下面展示了如何使用 SDO_JOIN 关联县(多边形)和城市(点)

SELECT ci.city, ci.state_abrv, co.county
  FROM us_cities ci,
       us_counties co,
       TABLE(SDO_JOIN(
             'US_COUNTIES', 'GEOM',
             'US_CITIES', 'LOCATION',
             'MASK=INSIDE') 
       ) j
WHERE j.rowid1 = ci.rowid
  AND j.rowid2 = co.rowid
ORDER BY ci.city, ci.state_abrv;
于 2015-04-13T13:56:39.713 回答