MySQL 8.4 发行说明
对于 MyISAM
和 InnoDB
表,可以使用 SPATIAL
索引优化对包含空间数据的列进行的搜索操作。最典型的操作是:
点查询,用于搜索包含给定点的所有对象
区域查询,用于搜索与给定区域重叠的所有对象
MySQL 在空间列的 SPATIAL
索引中使用具有二次分割的 R-Tree。 SPATIAL
索引是使用几何图形的最小边界矩形 (MBR) 构建的。 对于大多数几何图形,MBR 是围绕几何图形的最小矩形。 对于水平或垂直线段,MBR 是退化为线段的矩形。 对于点,MBR 是退化为点的矩形。
也可以在空间列上创建普通索引。 在非 SPATIAL
索引中,必须为除 POINT
列之外的任何空间列声明前缀。
MyISAM
和 InnoDB
支持 SPATIAL
和非 SPATIAL
索引。 其他存储引擎支持非 SPATIAL
索引,如 第 15.1.15 节“CREATE INDEX 语句” 中所述。