我有两个表,每个表都有一个SHAPE Geom Column,我正在努力获得第一个表中每个形状与第二个表之间的相交区域。
第二个表有数百万行,因此我的查询需要很长时间才能执行。 我想使用以下方法在 SHAPE 列上创建索引:
create spatial index SPIX_Shape on LAND_V1(Shape) using geometry_auto_grid
我收到以下错误消息:
The CREATE SPATIAL INDEX statement is missing the required parameter 'BOUNDING_BOX'.
Validate the statement against the index-creation syntax.
我是空间数据世界的新手,如果我在这里错了,请纠正我。 最初,我认为边界框应该由数据库引擎自动创建,检查每个单独的形状 Geom 并在索引时为其创建一个边界框。如何为我的数据手动指定边界框?
然后那个边界框会影响我最后计算的相交区域吗?它会根据 GeomType [Polygon/MultiPolygon/GeometryCollection etc..] 的不同而有所不同吗?
这是我的查询:
select
s1.*,
s2.Shape.STIntersection(s1.Shape) as SHAPE
from LAND_V1 s1
inner join LAND_V2 s2 -- biggerTable
ON s1.Shape.STIntersects(s2.Shape) = 1
我将如何在这里利用空间索引