【问题标题】:How can I get the zone administrive of a city from postgis (nominatim import)? [closed]如何从 postgis (nominatim import) 获得城市的区域管理? [关闭]
【发布时间】:2012-05-01 19:07:46
【问题描述】:

我用 osm2pgsql 检索了 europe.osm 数据库。现在我尝试利用它。 有没有办法从小镇村庄或城市之类的方式获取州、国家、地区?

编辑
http://wiki.openstreetmap.org/wiki/Nominatim
https://github.com/twain47/Nominatim

数据库osm格式:
http://download.geofabrik.de/osm/europe/
这是数据库架构:
http://wiki.openstreetmap.org/wiki/Osm2pgsql/schema

【问题讨论】:

  • 我想,当我向开放街道地图数据库寻求帮助时,它是为熟悉这个开源数据库的人准备的,但是我将添加 2 链接与文档参考....所以我意识到“Stack Overflow 不是我的个人研究助理”,并确保我尽可能地寻找解决方案,我只希望整个社区中的某个人能解决我的问题并找到解决方案。不是有效的方式吗?我不是要人们找我.....只是给我一些元素(如果他们必须)继续。
  • @casperOne,我不明白为什么这个问题被关闭了,我第一次阅读问题时就清楚地理解了他想要什么,只是因为你不熟悉openstreetmap数据,那不意思是你应该关闭它
  • @pacofvf 是的,关于“熟悉 openstreetmap 数据”,该论点与关闭的原因无关。此外,您应该更熟悉常见问题解答和 Meta;很明显,没有研究工作涉及这个问题。在这些情况下,常见的关闭原因是“不是一个真正的问题”。
  • @casperOne 好吧,我认为你是对的,实际上在最后一个链接中有一个如何检索 osm 数据的示例。

标签: postgresql openstreetmap postgis nominatim


【解决方案1】:

我认为您已按照installation page 中的说明进行了完整的 Nominatim 安装,而不仅仅是 osm2pgsql 导入。

直接在数据库上执行 SQL 查询有点复杂。通过将反向请求直接发送到本地安装,您可以更轻松地获取管理信息。如果您有自己的 OSM id,请发送如下内容: http://your.local.nominatim.server/reverse?osm_type=W&osm_id= 并处理返回的 XML。

如果您仍想走 SQL 之路,请查看 placex 和 place_addressline 表。前者包含所有OSM对象,后者包含它们之间的关系。

【讨论】:

    【解决方案2】:

    好吧,我没有下载你的数据,但我的数据库中已经加载了几乎所有拉丁美洲的 openstreetmaps 数据,我相信它会下载的。

    这是一个城市最近的州的例子:

    select distinct on (a.name) 
       a.name as city,
       b.name as state,
       min(St_Distance(b.way, a.way)) as d 
    from planet_osm_point as a, 
      (SELECT name, way, place from planet_osm_point WHERE place='state') as b 
    where a.place='city' group by 1,2 order by 1 asc;
    

    但这并不准确,假设您可以使用多边形表进行更好的猜测:

    select a.name as city,b.name as state,b.place 
    from planet_osm_point as a, planet_osm_polygon as b 
    where St_Contains(b.way, a.way) 
       and a.place='city'; -- and b.place='state' -- my polys table aren't tagged properly so I ignored polys.place
    

    希望它有效:)。

    【讨论】:

      猜你喜欢
      • 2011-09-15
      • 2012-01-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-28
      相关资源
      最近更新 更多