我有一个联系人表和一个邮政编码数据表。
我需要匹配邮政编码的第一部分以及与邮政编码表的连接...,然后执行更新...
我想做这样的事情...
UPDATE `contacts` LEFT JOIN `postcodes` ON PREG_GREP("/^[A-Z]{1,2}[0-9][0-9A-Z]{0,1}/", `contacts`.`postcode`) = `postcodes`.`postcode` SET `contacts`.`lat` = `postcode`.`lat`, `contacts`.`lng` = `postcode`.`lng`
可能吗??还是我需要使用外部脚本?
非常感谢。
最佳答案
我不确定您要使用的正则表达式是什么,但是如果您只需要使前[LENGTH]个字符相同,那么它将起作用:
update c
set c.lat = p.lat, c.lng = p.lng
from contacts c
inner join postcodes p
on substring(c.postcode, 0, [LENGTH]) = substring(p.postcode, 0, [LENGTH]
关于mysql - 更新正则表达式MYSQL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2507487/