“Sono un principiante con il cavalcavia. Ho bisogno di ottenere tutti i numeri civici possibili nellarea con un determinato CAP e una parte di strada.

Ad esempio. Tutte le case per: 10178 alex

Il risultato deve essere o simile 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 

Ho provato la query successiva, ma non ha restituito risultati.

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; 

Cosa sto facendo di sbagliato?

Commenti

  • Solo una supposizione: il cavalcavia potrebbe non considerare una strada / passaggio unarea valida in cui cercare, o almeno non abbastanza grande (solo una linea molto sottile?). Probabilmente potresti filtrare per numero civico e nome della via node["addr:housenumber"]["addr.street"~~"^alex.*"], a seconda dei dati OSM che ' sono disponibili
  • " con il codice postale specificato e una parte della strada ", quindi vuoi che tutti gli indirizzi che corrispondono al tuo codice postale e il nome della via?
  • @Mateusz Konieczny esatto ly!
  • " way (area.a) [" autostrada " " non funzionava come previsto perché le strade non hanno area. " intorno a ", ma non funzionerebbe in quanto potrebbe catturare gli indirizzi delle strade vicine o non catturare alcuni indirizzi lontani.

Risposta

Questa query presuppone che

  • desideri tutti gli indirizzi che corrispondono a entrambi il tuo codice postale e la parte specificata del nome della strada
  • è preferibile linsensibilità tra maiuscole e minuscole (il filtro alex dovrebbe corrispondere anche ad Alex, AleX ecc.)
  • il tag Postal_code è etichettato nellarea con boundary = Postal_code ( AFAIK non è vero ovunque)
  • lindirizzo utilizza i tag addr: street e 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; 

Commenti

  • Sto cercando di far funzionare qualcosa di simile a questo per le strade americane, ma ' non sembra, hai un esempio?
  • @MichaelLWatson Per favore collega a una nuova domanda che dimostra cosa non funziona e cosa hai provato.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *