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