Normalize_Address — 在给定文本街道地址的情况下,返回一个复合 norm_addy
具有道路后缀、前缀和标准化类型、街道、街道名称等的类型划分为单独的字段。该函数将只处理用Tiger_Geocode打包的查找数据(不需要Tiger人口普查数据)。
norm_addy normalize_address(
varchar in_address)
;
在给定文本街道地址的情况下,返回一个复合 norm_addy
具有道路后缀、前缀和标准化类型、街道、街道名称等的类型划分为单独的字段。这是将所有地址转换为标准化邮政格式的地理编码过程的第一步。除了与地理编码器一起打包的数据外,不需要其他数据。
此函数仅使用随Tiger_Geocoder预加载的各种方向/州/后缀查找表,这些查找表位于 tiger
模式,因此您不需要下载老虎普查数据或任何其他附加数据即可使用它。您可能会发现需要向中的各种查找表添加更多缩写或替代名称 tiger
架构。
它使用位于以下位置的各种控件查找表 tiger
用于标准化输入地址的架构。
中的字段 norm_addy
TYPE OBJECT由该函数按以下顺序返回,其中()表示地理编码器需要的字段,[]表示可选字段:
(地址)[predirAbbrev](街道名称)[streetTypeAbbrev][postdirabbrev][内部][位置][stateAbbrev][压缩][已解析][ZIP4][地址_字母数字]
增强:2.4.0 Norm_Addy对象包括附加字段ZIP4和Address_AlphanNumeric。
address
是一个整数:街道编号
predirAbbrev
是varchar:道路的方向前缀,如N、S、E、W等。这些是使用 direction_lookup
数据表。
streetName
Varchar
streetTypeAbbrev
街道类型的varchar缩写版本:例如ST、Ave、Cir。这些都是使用 street_type_lookup
数据表。
postdirAbbrev
道路N、S、E、W等的缩写方向。这些都是使用 direction_lookup
数据表。
internal
Varchar内部地址,如公寓或套房编号。
location
瓦尔察尔通常是一个城市或管理省份。
stateAbbrev
Varchar两个字符的美国州。例如密歇根州纽约州马萨诸塞州。这些属性由 state_lookup
数据表。
zip
Varchar 5位数字邮政编码。例如02109。
parsed
Boolean-表示addess是否由规格化过程形成。NORMALIZE_ADDRESS函数在返回地址之前将其设置为真。
zip4
9位邮政编码的最后4位。提供:PostGIS 2.4.0。
address_alphanumeric
完整的街道编号,即使它有17R这样的字母字符。对此进行解析更好地使用 Pagc_Normalize_Address 功能。提供:PostGIS 2.4.0。
输出选择字段。使用 Pprint_Addy 如果您想要一个漂亮的文本输出。
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 |