Geocode_Intersection — Prend 2 rues qui s'intersectent et un état, une ville, un code postal, et produit un ensemble d'emplacements possibles sur la première rue croisée qui est à l'intersection, comprend également un "geomout" comme emplacement du point en NAD 83 long lat, une adresse_normalisée
(addy) pour chaque emplacement, et l'évaluation. Plus la note est basse, plus la correspondance est probable. Les résultats sont triés en fonction de la note la plus basse. Il est possible d'indiquer le nombre maximum de résultats, la valeur par défaut étant de 10. Utilise les données Tiger (edges, faces, addr), la correspondance floue de PostgreSQL (soundex, levenshtein).
setof record geocode_intersection(
text roadway1, text roadway2, text in_state, text in_city, text in_zip, integer max_results=10, norm_addy OUT addy, geometry OUT geomout, integer OUT rating)
;
Prend 2 rues qui s'intersectent et un état, une ville, un code postal, et produit un ensemble d'emplacements possibles sur la première rue croisée qui est à l'intersection, comprend également une géométrie de point dans NAD 83 long lat, une adresse normalisée pour chaque emplacement, et la cote. Plus la note est basse, plus la correspondance est probable. Les résultats sont triés par ordre décroissant. Il est possible d'indiquer le nombre maximum de résultats, la valeur par défaut étant de 10. Retourne adresse_normalisée
(addy) pour chaque, "geomout" comme emplacement du point en nad 83 long lat, et la note. Plus la note est basse, plus la correspondance est probable. Les résultats sont triés en fonction de la note la plus basse. Utilise les données Tiger (bords, visages, adresses), la correspondance floue de PostgreSQL (soundex, levenshtein)
Disponibilité : 2.0.0
Les exemples de temps ci-dessous sont basés sur une machine Windows 7 à un processeur 3.0 GHZ avec 2 Go de mémoire vive, avec PostgreSQL 9.0/PostGIS 1.5 et toutes les données de MA State Tiger chargées. Actuellement un peu lent (3000 ms)
Test sur Windows 2003 64-bit 8GB sur PostGIS 2.0 PostgreSQL 64-bit Tiger 2011 données chargées -- (41ms)
SELECT pprint_addy(addy), st_astext(geomout),rating FROM geocode_intersection( 'Haverford St','Germania St', 'MA', 'Boston', '02130',1); pprint_addy | st_astext | rating ----------------------------------+----------------------------+-------- 98 Haverford St, Boston, MA 02130 | POINT(-71.101375 42.31376) | 0
Même si le code postal n'est pas transmis, le géocodeur peut deviner (cela a pris environ 3500 ms sur la boîte Windows 7), sur la boîte Windows 2003 64-bit 741 ms
SELECT pprint_addy(addy), st_astext(geomout),rating FROM geocode_intersection('Weld', 'School', 'MA', 'Boston'); pprint_addy | st_astext | rating -------------------------------+--------------------------+-------- 98 Weld Ave, Boston, MA 02119 | POINT(-71.099 42.314234) | 3 99 Weld Ave, Boston, MA 02119 | POINT(-71.099 42.314234) | 3