需要用单引号替换 SQL 中的文本

Need replace text with single quotes in SQL

我需要制作一个脚本来替换包含以下内容的列的所有寄存器:'@xxxx',删除单引号。 (xxxx 可以是空字符串或任何字符串。@, 是必要的,简单的引号也是如此)。

我正在实现类似的东西,但它对我不起作用,因为 'REPLACE' 函数接受字符串作为参数,而不是接受其他函数。

谢谢

我试过了

UPDATE MY_TABLE SET MY_COLUMN = REPLACE('MY_COLUMN',
    SELECT "MY_COLUMN" FROM MY_TABLE WHERE "MY_COLUMN" like '%''@%', 
        SELECT TRIM( '%''%' FROM MY_TABLE WHERE "MY_COLUMN" like '%''@%'))

不清楚您使用的是什么 dbms,但这是我在 SQLServer 中使用的,如果不是这个,您可以为您修改 dbms。

这里的关键点是你做错了,你在每一行上使用替换函数,而不是将记录集传递到替换中。

UPDATE mt
SET myColumn =  REPLACE(myColumn, '''','')
FROM myTable mt 
WHERE myColumn LIKE '%''@%'