Name

Normalize_Address — Dado um endereço em texto de uma rua, retorna um tipo composto norm_addy que não tem um sufixo, prefixo e tipo padronizado, rua, nome de rua etc. quebrado e, campos separados. Essa função irá funcionar com os dados lookup compactados com o tiger_geocoder (dados do censo tiger não são necessários).

Synopsis

norm_addy normalize_address(varchar in_address);

Descrição

Dado um endereço em texto de uma rua, retorna um tipo composto norm_addy que não tem um sufixo, prefixo e tipo padronizado, rua, nome de rua etc. quebrado e, campos separados. Esse é o primeiro passo no processo de geocodificação para tornar todos os endereços normalizados no formato postal. Nenhum outro dado é requerido à parte do que está compactado com o geocoder.

Essa função utiliza as várias lookup tables direção/estado/sufixo pré carregadas com o tiger_geocoder e localizadas no esquema tiger, então, você não precisa baixar os dados do censo tiger ou qualquer outro tipo de dados para utilizá-la. Talvez você ache necessário adicionar mais abreviações ou nomes alternativos para as lookup tables no esquema tiger.

Utiliza várias tables lookup de controle localizadas no esquema tiger para normalizar o endereço de entrada.

Campos no tipo de objeto norm_addy retornou pela função nessa ordem, onde () indica um campo requerido pelo geocoder, [] indica um campo opcional:

(address) [predirAbbrev] (streetName) [streetTypeAbbrev] [postdirAbbrev] [internal] [location] [stateAbbrev] [zip] [parsed] [zip4] [address_alphanumeric]

Enhanced: 2.4.0 norm_addy object includes additional fields zip4 and address_alphanumeric.

  1. address é um inteiro: O número da rua

  2. predirAbbrev is varchar: Prefixo direcional para rua como N, S, L, O etc. Esse são controlados usando a table direction_lookup.

  3. streetName varchar

  4. A versão varchar streetTypeAbbrev abreviada dos tipos de rua: ex: St., Av., Cir. Elas são controladas usando a tables street_type_lookup.

  5. As direções varchar postdirAbbrev abreviadas N, S, L, O etc. Elas são controladas utilizando a table direction_lookup.

  6. Varchar interno endereço interno como um apartamento ou número de suíte.

  7. Varchar localização normalmente uma cidade ou província governante.

  8. Os estados varchar stateAbbrev dos EUA de dois caracteres. ex: MA, NY, MI. Estes são controlados pela table state_lookup.

  9. zip varchar 5-digit zipcode. e.g. 02109.

  10. parsed booleana - indica se um endereço foi formado pelo processo normalizador. A função normalize_address coloca isso como verdade antes de retornar o endereço.

  11. zip4 last 4 digits of a 9 digit zip code. Availability: PostGIS 2.4.0.

  12. address_alphanumeric Full street number even if it has alpha characters like 17R. Parsing of this is better using Pagc_Normalize_Address function. Availability: PostGIS 2.4.0.

Exemplos

Gerar campos selecionados. Use Pprint_Addy se você quer uma saída textual.

SELECT address As orig, (g.na).streetname, (g.na).streettypeabbrev
 FROM (SELECT address, normalize_address(address) As na
        FROM addresses_to_geocode) As g;

                        orig                         |  streetname   | streettypeabbrev
-----------------------------------------------------+---------------+------------------
 28 Capen Street, Medford, MA                        | Capen         | St
 124 Mount Auburn St, Cambridge, Massachusetts 02138 | Mount Auburn  | St
 950 Main Street, Worcester, MA 01610                | Main          | St
 529 Main Street, Boston MA, 02129                   | Main          | St
 77 Massachusetts Avenue, Cambridge, MA 02139        | Massachusetts | Ave
 25 Wizard of Oz, Walaford, KS 99912323              | Wizard of Oz  |
        

Veja também

Geocode, Pprint_Addy