Huu*_*uze 9 regex sql postgresql
我的"Street_Address_1"列中包含以下数据:
123 Main Street
使用Postgresql,我如何编写查询来更新地址表中的"Street_Name"列?换句话说,"Street_Name"为空,我想用"Street_Address_1"列中包含的街道名称值填充它.
据我所知,我想使用"regexp_matches"字符串方法.不幸的是,我运气不好.
注意:您可以假设所有地址都采用"StreetNumber StreetName StreetType"格式.
Ale*_*lli 14
就像是...:
UPDATE table
SET Street_Name = substring(Street_Address_1 FROM '^[0-9]+ ([a-zAZ]+) ')
Run Code Online (Sandbox Code Playgroud)
见从PGSQL 8.3.7文档相关章节中,substring形式节开始后不久详尽.
Mat*_*ood 14
如果您只想获取Street_Address_1并删除任何前导数字,则可以执行以下操作:
UPDATE table
SET street_name = regexp_replace(street_address_1, '^[0-9]* ','','');
Run Code Online (Sandbox Code Playgroud)
这将获取street_address_1中的值,并使用空字符串替换任何前导数字字符串(加上单个空格)(第四个参数用于可选的正则表达式标志,如"g"(全局)和"i"(不区分大小写)).
这个版本允许像"1212 15th Street"这样的东西正常工作.
| 归档时间: |
|
| 查看次数: |
11584 次 |
| 最近记录: |