今天導一些數據從Excel中至Sqlserver 數據庫中,在作數據合併去重的時候發現,有兩條數據如出一轍,居然沒有進行合併;數據庫
最後發現有一條後面有個「空格」,正是由於這個「空格」讓我抓狂許久,由於它是個假「空格」!spa
普通的空格移除方法:code
SELECT ltrim(' 移除掉左邊的空格 ') SELECT rtrim(' 移除掉右邊的空格 ') SELECT rtrim(ltrim(' 移除掉兩邊的空格 ')) SELECT replace(' 移除掉兩邊的空格 ',' ','')
假空格移除方法:server
分析:有些換行或者回車字符,會被認爲是空格,因此,要把換行與回車處理掉;blog
對比下ASCII碼錶,把對應的字符替換掉;class
SELECT REPLACE(列名,char(9),'') ----將水平製表符替換爲‘’ SELECT REPLACE(列名,char(10),'')----將換行符替換爲‘’ SELECT REPLACE(列名,char(13),'')----將回車符替換爲‘’
若是上面的兩種方法還不能解決你的問題,那麼看第三種,我就是這種解決的,只能曲線救國了;方法
方法:這些看似空格,其實有可能不是,能夠複製一下,在Excel裏面進行替換,替換成''。im