Soy muy principiante con el paso elevado. Necesito obtener todos los números de casa posibles en el área con el código postal dado y una parte de calle.

Por ejemplo. Todas las casas para: 10178 alex

El resultado debe ser o similar a:

Alex-Wedding-Straße, 10178 Berlin Tunnel Alexanderplatz, 10178 Berlin Alexanderplatz, 10178 Berlin Alexanderplatz 1, 10178 Berlin Kleine Alexanderstraße 1, 10178 Berlin Alexanderstraße 1, 10178 Berlin Alexanderplatz 2, 10178 Berlin 

Intenté la siguiente consulta, pero no arrojó ningún resultado.

area[postal_code=10178][boundary=postal_code]->.a; way(area.a)["highway"~"^(primary|secondary|tertiary|residential|living_street)$"]["name"~"^alex.*"]->.street; ( node["addr:housenumber"](area.street); way["addr:housenumber"](area.street); relation["addr:housenumber"](area.street); ); (._;>;);out; 

¿Qué estoy haciendo mal?

Comentarios

  • Solo una suposición: Es posible que el paso elevado no considere una calle / vía un área válida para buscar, o al menos no lo suficientemente grande (solo ¿Una línea muy delgada?). Probablemente podría filtrar por número de casa y nombre de calle node["addr:housenumber"]["addr.street"~~"^alex.*"], según los datos de OSM que ' estén disponibles
  • " con el código postal dado y una parte de la calle ", por lo que desea que todas las direcciones coincidan con su código postal y el nombre de la calle?
  • @Mateusz Konieczny exacta ly!
  • " camino (area.a) [" autopista " " no funcionaba como se esperaba porque las calles no tienen área. Hay " alrededor de " pero eso también fallaría ya que capturaría direcciones de calles cercanas o no capturaría algunas direcciones lejanas.

Responder

Esta consulta asume que

  • desea que todas las direcciones coincidan con ambas su código postal y parte especificada del nombre de la calle
  • Se prefiere la insensibilidad a mayúsculas y minúsculas (el filtro de alex debe coincidir también con Alex, AleX, etc.)
  • La etiqueta postal_code está etiquetada en el área con boundary = postal_code ( AFAIK no es cierto en todas partes)
  • La dirección usa las etiquetas addr: street y addr: housenumber
 area[postal_code=10178][boundary=postal_code]->.code; ( node["addr:housenumber"]["addr:street"~"alex",i](area.code); way["addr:housenumber"]["addr:street"~"alex",i](area.code); relation["addr:housenumber"]["addr:street"~"alex",i](area.code); ); (._;>;);out; 

Comentarios

  • Estoy tratando de hacer que algo similar a esto funcione en las calles estadounidenses, pero no ' parece hacerlo, ¿tiene un ejemplo?
  • @MichaelLWatson Por favor, enlace a una nueva pregunta que demuestre lo que no está funcionando y lo que intentó.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *