我有一个列,其中包含以下值:
Y
现在,我想为N
到 var d = new Date()
var n = d.getTimezoneOffset();
的所有行更新New_eMail属性,而不会影响其他任何内容。
请告知。
答案 0 :(得分:2)
我讨厌但是......
update table
set column = replace(column,'New_eMail+Y','New_eMail+N')
where column like '%New_eMail+Y%'
你不需要WHERE子句但是如果你在表上放置一个功能索引它可能会更快
答案 1 :(得分:1)
我的答案比用户davegreen100的答案略有改进 由于他们不允许我将其作为评论发布,我在此处添加。
update <<tablename>>
set <<columnname>> = replace(<<columnname>>,';New_eMail+Y;',';New_eMail+N;')
where <<columnname>> like '%;New_eMail+Y;%'
答案 2 :(得分:1)
因为它可能是字符串中唯一一个&#39; + Y;&#39;发生以下声明可能会解决问题:
update <your_table>
set <your_column> = replace(<your_column>,'+Y;','+N;')
where instr(<your_column>,'+Y;')>0
此解决方案与其他解决方案不同,因为它不依赖于电子邮件地址的值。