我有一个表格,其中包含一个名为“注释”的文本列。
此列包含空值和一些字符串值。下面的更新查询在不应该运行的表上运行。
update tblExample set Note = Note + ' USD Temp influx'
因此,其中包含 null 的行没有更改,但其他行已更改。
我想从字段中删除此文本,并保留其中已有的任何其他文本。最好的方法是什么?
是否类似于下面的内容,但在更新查询中?不知道应该怎么写?
select replace(Note, ' USD Temp influx', '') from tblExample?
更新
抱歉应该说该列是 nvarchar 类型
最佳答案
您可以使用:
UPDATE tblExample
SET Note = replace(Note, ' USD Temp influx', '')
WHERE Note LIKE '% USD Temp influx';
-- it will replace all occurences in string (not only the last one)
或更安全的方式:
UPDATE tblExample
SET Note = LEFT(Note, LEN(Note) - 16)
WHERE Note LIKE '% USD Temp influx';
<强> Rextester Demo
关于sql - 从表中的列中删除字符串的某些部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48769408/