0

我们在数据库中的一些记录在字符串之前或之后有一个空格。我需要通过简单地创建一个 sql 查询来纠正它。我在下面有这个建议的查询:

update tableA set columnname1 = trim(columnname1) where columnname1 REGEXP '^[[:blank:]]|[[:blank:]]$'

update tableA set columnname1 = trim(columnname1)

update tableA set columnname1 = trim(columnname1) where trim (columnname1) IS NOT NULL

update tableA set columnname1 = trim(columnname1) where columnname1 like ' %' or columnname1 like '% '

我的前辈不接受所有这些。是否有任何其他查询能够更新那些有空格的记录?

4

3 回答 3

1

尝试

update tableA set columnname1 = Rtrim(Ltrim(columnname1))

可选地,添加

where columnname1 like ' %' or columnname1 like '% '
于 2012-09-03T10:49:38.820 回答
1

您可以使用以下查询。

UPDATE tableA
SET name = REPLACE(columnname1 , 
           SUBSTRING(columnname1 , PATINDEX('%[^a-zA-Z0-9 '''''']%', columnname1 ), 1), 
                  '')
WHERE PATINDEX('%[^a-zA-Z0-9 '''''']%', columnname1 ) <> 0
于 2012-09-03T10:59:14.603 回答
1

目的是这个

update tableA set columnname1 = trim(columnname1) 
 where columnname1 <> trim(columnname1) 
于 2012-09-03T11:11:05.717 回答