我遇到了正则表达式的问题,因为它更新了根本不起作用的电子邮件的多重集。你看我正在尝试更新。
alisonsmith@gmail.com
bobgraves@hotmail.com
smithers@yahoo.com
011013092949@msn.ca
011513025559@aol.ca
101513025559@MSN.COM
结果应如下所示:
alisonsmith@dony.com
bobgraves@dony.com
smithers@dony.com
011013092949@dony.com
011513025559@dony.com
101513025559@dony.com
我已经尝试过这样的更新程序,它根本不起作用:
update dony_membership
set Email = LEFT(Email,12)+'@dony.com'
set Email = LEFT(Email,0)+'@dony.com'
where Email LIKE '%[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]@%'
or Email LIKE'@%'
答案 0 :(得分:1)
因为看起来你想要在所有行的@ -sign之后更改部分,我不会打扰正则表达式,而只是保留@ -sign之前的内容并附加新域名(dony) .com):
update dony_membership
set email = left(email, charindex('@', email, 0)) + 'dony.com'
Sample SQL Fiddle为了您的观赏乐趣:)