在一个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_name
, first_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".