使用NULL更新包含单个`(反引号)的字段

时间:2017-04-05 14:28:56

标签: sql sql-server tsql sql-server-2012

我正在尝试从我无法控制数据质量的来源导入数据。我知道如何删除/替换大多数东西,但我遇到了一个包含单个`(反引号)的字段,我需要用NULL替换它。我需要删除反引号,因为我将varchar字段中的数据转换为数字。我试过这个版本:

Update dbo.Sale
Set Stamps = NULL
where Stamps = ''''

2 个答案:

答案 0 :(得分:0)

为清晰起见,您可以使用CHAR(39)

UPDATE dbo.Sale
SET Stamps = NULL
WHERE Stamps = CHAR(39);

答案 1 :(得分:0)

这可能会对你有所帮助

DECLARE @t TABLE (MyColumn VARCHAR(255))

INSERT INTO @t
        ( MyColumn )
VALUES  ( ''''  -- MyColumn - varchar(255)
          )

SELECT * 
FROM @t

UPDATE @t
SET MyColumn = NULL
WHERE MyColumn = CHAR(39)

SELECT *
FROM @t

OR

UPDATE @t
    SET MyColumn = NULL
    WHERE MyColumn = ''''