在一个SELECT语句(MS SQL)中,你如何修剪一个string

例如:

SELECT TRIM(Names) FROM Customer; 
 SELECT LTRIM(RTRIM(Names)) AS Names FROM Customer 

要在右侧修剪,请使用:

 SELECT RTRIM(Names) FROM Customer 

要在左侧修剪,请使用:

 SELECT LTRIM(Names) FROM Customer 

要在两侧修剪,请使用:

 SELECT LTRIM(RTRIM(Names)) FROM Customer 

我认为这是一次性的数据清理练习。 一旦完成,确保你添加数据库约束,以防止在未来的坏数据,例如

 ALTER TABLE Customer ADD CONSTRAINT customer_names__whitespace CHECK ( Names NOT LIKE ' %' AND Names NOT LIKE '% ' AND Names NOT LIKE '% %' ); 

也可以考虑禁止可能导致问题的其他字符(制表符,回车符,换行符等)。

将这些名称分割成family_namefirst_name等也可能是个好时机:)

 SELECT LTRIM(RTRIM(Replace(Replace(Replace(name,' ',' '),CHAR(13), ' '),char(10), ' '))) from author 

在sql server 2008 r2中用ssisexpression式我们有trimfunction。

SQL Server集成服务(SSIS)是Microsoft SQL Server数据库软件的一个组件,可用于执行各种数据迁移任务。

你可以在这个链接find完整的描述

http://msdn.microsoft.com/en-us/library/ms139947.aspx

但是这个函数本身有一些限制,这个也是msdn在那个页面上提到的。 但是这是在SQL Server 2008 R2

 TRIM(" New York ") .The return result is "New York".