我有一个支持 PostGIS 的数据库,其中有一个名为 locations 的表,该表将纬度-经度点(SRID 4326)存储在名为 coordinates 的列中。但是,我在该表上的所有查找都将点转换为公制投影 (SRID 26986),主要是为了进行距离比较。

显然我想在 coordinates 列上创建一个空间索引。我的问题是,在这种情况下,在 coordinates 空间索引中使用哪个 SRID 最好(计算效率最高)?

我可以使用 SRID 4326 进行索引...

CREATE INDEX locations_coordinates_gist
ON locations
USING GIST (coordinates);

或者使用 SRID 26986 ...
CREATE INDEX locations_coordinates_gist
ON locations
USING GIST (ST_Transform(coordinates, 26986));

最佳答案

我在阅读关于 ST_Transform 函数的 PostGIS 文档时发现了这个有用的信息......



所以答案似乎是,两者都使用!我创建了两个索引,每个索引一个。

关于postgresql - 哪个 PostGIS SRID 对于空间索引最有效?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13181942/

10-15 12:31