我在 Postgres 中有这个表,如下所示:
create table locations
(
id serial not null
constraint games_pkey
primary key,
name varchar,
location point,
)
;
Run Code Online (Sandbox Code Playgroud)
我想根据另一个位置point( x, y )
作为纬度和经度进行查询;我只需要返回距离该位置 1 公里以内的记录。如何有效地选择符合该标准的记录?
我只需要在局部范围内精确的距离,因此地球曲率对我的应用程序来说不应该是一个问题,但是在这种情况下,POINT 或 GIS 是否有性能优势?
我在 stackoverflow 上发现了这个问题,它似乎做了类似的事情,但接受的答案只有代码,也没有说明它是如何工作的:https : //stackoverflow.com/questions/37827468/find-the-nearest-location-by -latitude-and-longitude-in-postgresql