MSSQL中處理數據中空格和回車

朋友的問題,原文地址:http://topic.csdn.net/u/20110719/08/612e59e9-c964-471e-a659-3e8cd393fa7d.html

--如何將數據中包含的空格和回車刪除

/*
Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64) 
Apr 2 2010 15:48:46 
Copyright (c) Microsoft Corporation
Developer Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)

Purpose: CSDN
Author: select left('claro',2)
Time:	 select convert(varchar(100),getdate(),20) = '2011-07-19 16:27:44'

*/

select * from T

/*
Code Remark
----------- --------------------
1 測試 數據。 
2 不清楚這個過程 。 
1 測試 
數據。 

(3 行受影響)
*/



--T-sql 1

select Code,REPLACE(replace(remark,CHAR(32),''),CHAR(13)+CHAR(10),'') as remark
from T
--result:
/*
Code remark
----------- --------------------------
1 測試數據。
2 不清楚這個過程。
1 測試數據。

(3 行受影響)
*/



--T-sql 2

declare @a varchar(4),@b varchar(4),@c varchar(4),@sql nvarchar(1000)
select @a=char(32),@b=char(13),@c=CHAR(10)
set @sql= 'select code,replace(replace(remark,'''+@a+''',''''),'''+@b+@c+''','''') as remark from T'
exec (@sql)
--result:
/*
Code remark
----------- --------------------------
1 測試數據。
2 不清楚這個過程。
1 測試數據。

(3 行受影響)
*/



--總結:中英文空格的ASCII值爲32,而對於控制字符,製表符、換行符和回車符分別是是char(9)、char(10)和char(13)。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章