1、可以使用 trim 函式,刪除字串「首、尾」的正常空格
update 表名 set 欄位1
=trim(欄位1
), 欄位2
=trim(欄位2
), 欄位3
=trim(欄位3
)
案例:
update 表1
set trim後=trim(欄位1
2、如果trim 達不到想要的效果,可以使用 replace(欄位名, chr(9), 「」),來刪除字串中的不可見空格有時,從**匯入到 access 中的資料,可能會包含不可見空格。
肉眼看不出來差別,但是當你去重的時候會發現,看起來一模一樣的兩條記錄,就是無法去掉,
出現這種情況,基本上就是因為某乙個字串中包含不可見字元。
更要命的是,在你把資料從 access 重新匯出到**中時,不可見字元又會自動被刪掉,
只有直接從資料庫複製到表中時,不可見字元才會被保留,所以常常很難找出問題的原因
案例:test 表為乙個包含了不可見字元的資料來源
現對 test表 執行去重語句
select
distinct 產品名稱 from test;
發現執行結果中,就出現了上面說的情況:看起來一樣的字串,卻沒有成功去重
出現這種情況時,可以通過下面語句解決
update test set 產品名稱=
replace
(產品名稱, chr(9)
,"")
然後再去重,就能得到想要的結果了
select
distinct 產品名稱 from test;
3、對 replace(產品名稱, chr(9), 「」) 的詳解:為什麼這個函式可以成功去掉不可見空格b2單元格中,是乙個包含了不可見空格的字串,只有當你複製貼上到篩選中的時候,才能看到
現在通過 code 函式,來看看這個「不可見空格」到底是何方妖怪
從上圖可以看到,code(b2) 的結果為 9,在 ascii 碼表中可以查到,它是乙個水平製表符
所以,在 access 中,只需要把這個「水平製表符」替換掉就可以解決問題咯
Vim中顯示不可見字元
在linux中,cat a file可以把檔案中的所有 可見的和不可見的字元 都顯示出來,在vim中,如何將不可見字元也顯示出來呢?當然,如果只是想在vim中檢視的話,可以這樣 cat a在vim中呼叫cat轉換顯示。這樣的做法不便於編輯,其實vim本身是可以設定顯示不可見字元的。只需要 set i...
EXCEL中的神秘的不可見字元
因處理資料,需要把單位名稱前的空格字元去年,結果只有幾條記錄的去掉了,大部分記錄的單位名稱欄位前的空格沒有去掉。先看下圖 第1列為原資料,第2列為應用公式trim去空格,第3列用substitue函式替換空格 選中a列第3行 山東路 前面的空格 進行替換操作,把這些未知的字元替換成b 黃色記錄的4處...
字串中的不可見字元
最近用datax匯入資料到pipeline的時候,碰到乙個報髒資料的錯誤,檢查後發現字串包含 u0000和 u007f,就以為是這兩個unicode字元搞的鬼,寫了正則 unicode.replaceall s u007f s 來匹配,還是會報髒資料,原始的字串是下面這個樣子的 12345678 u...