我有一个Postgres数据库表,其中包含以下架构:
POIUid SERIAL PRIMARY KEY,
POI_Name VARCHAR(50) NOT NULL,
Lat DOUBLE PRECISION,
Lon DOUBLE PRECISION
我想在5公里范围内搜索最近的POI。
我读到,为了加快搜索速度,我需要使用PostgeSQL的Geospatial函数,并在POINT类型的表COORDINATES
中创建一个新列。
cube
和earthdistance
个扩展程序,还是postgis
扩展程序?COORDINATES
列上创建索引,这些值必须是唯一的吗?N.B。我已经在表中拥有超过300万个POI,在Lat / Lon上有数千个重复数据。
非常感谢任何帮助。