【发布时间】:2017-02-05 19:47:19
【问题描述】:
我已从geonames 下载数据,然后按照以下链接将其转储到 POSTGIS。
https://github.com/colemanm/gazetteer/blob/master/docs/geonames_postgis_import.md
目前我不确定如何在两条路线之间找到位置。该表有 latitude 和 longitude 的单独列。
我需要在路线之间找到位置,有什么办法吗?
我已经尝试过什么
获取两点之间的位置:
SELECT * FROM geoname WHERE
ST_DWithin('POINT(44.8781 -116.6298)',
ST_GeographyFromText('POINT(43.7392 -114.9903)'), 16093.4);
我得到 0 个结果,尽管我确信这些点附近有地方。
我也试过了,
SELECT * FROM geoname WHERE
ST_Distance_Sphere('POINT(44.8781 -116.6298)',
ST_MakePoint(43.7392,-114.9903)) <= 16093.4;
是否可以使用pgRouting 来完成。可能类似于使用pgRouting 获取路线,然后获取沿path 的地点。
【问题讨论】:
标签: postgresql postgis