create table places(lat_lng point,place_name varchar(50));insert into places values (POINT(-126.4,45.32),'Food bar');
什么应该是让所有地方接近特定纬度/经度的查询?
gis已安装.
如果您确实想使用PostGIS:create table places( lat_lng geography(Point,4326),place_name varchar(50));-- Two ways to make a geography pointinsert into places values (ST_MakePoint(-126.4,'Food bar1');insert into places values ('POINT(-126.4 45.32)','Food bar2');-- Spatial indexcreate index places_lat_lng_IDx on places using gist(lat_lng);
现在找到1公里(或1000米)范围内的所有地方:
select *,ST_distance(lat_lng,ST_MakePoint(-126.4,45.32)::geography)from placeswhere ST_DWithin(lat_lng,45.32)::geography,1000)order by ST_distance(lat_lng,45.32)::geography);总结
以上是内存溢出为你收集整理的postgresql – 某一点上最近的地方全部内容,希望文章能够帮你解决postgresql – 某一点上最近的地方所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)