从SQL Server列中删除尾随空格和空格

时间:2017-05-21 18:13:54

标签: sql sql-server tsql record trim

我的SQL Server数据库中有一个列,它在记录的左右两个站点都有空格。基本上它是nvarchar(250)列。

我尝试完全删除白色空格:

UPDATE MyTable 
SET whitespacecolumn = LTRIM(RTRIM(whitespacecolumn)) 

但这根本没有用,空白仍在那里。我在这做错了什么?

2 个答案:

答案 0 :(得分:1)

检查以下内容;

  1. 在字段值中查找char(10),char(13)等特殊字符。
  2. 检查ANSI_PADDING ON的状态。请参阅此MSDN文章。

答案 1 :(得分:1)

我认为替换是你想要更新的方式

UPDATE MyTable SET whitespacecolumn = Replace(whitespacecolumn, ' ', '')

您可以先尝试选择,然后选择更新

SELECT *, Replace(whitespacecolumn, ' ', '') from MyTable

LTRIM,RTRIM将删除列前后的空格。在2016年,您可以使用如下的TRIM功能修剪特殊字符:

SELECT TRIM( '.,! ' FROM  '#     test    .') AS Result;

输出:

# test