【发布时间】:2020-08-31 16:04:04
【问题描述】:
一直在寻找这个,我不认为嵌套替换是答案。我有一个需要保持唯一的电子邮件地址列表,但我需要将它们全部伪造以进行测试。所以我的想法是将“.com”、“.net”、“.org”等替换为“.mydomain.com”。但是总共有很多结局。
我意识到我可以删除 @ 并在末尾添加“@mydomain.com”,但现在我也想弄清楚如何解决这个特殊问题。
而不是做:
BEGIN TRANSACTION;
UPDATE Customer
SET Email=REPLACE(Email, '.com','.mydomain.com')
where email not like '%.mydomain.com%'
COMMIT TRANSACTION;
对于每个案例“.com”、“.net”、“.org”......
有没有办法说,在一个语句中用 '.mydomain.com' 替换所有这些('.com'、'.net'、'.org')?
类似的东西。
BEGIN TRANSACTION;
UPDATE Customer
SET Email=REPLACE(Email, (in ('.com', '.net', '.org')),'.mydomain.com')
where email not like '%.mydomain.com%'
COMMIT TRANSACTION;
【问题讨论】:
标签: sql-server replace sql-update