sql server中字串無法替換空格的問題

2022-07-09 19:18:15 字數 498 閱讀 1443

直接上**:

select

case

when 'workreport'=ltrim(rtrim(' workreport ')) then 'trim去空格成功'

when 'workreport'=replace(' workreport ',' ','') then 'replace去空格成功'

when 'workreport'=replace(' workreport ',char(ascii(replace(' workreport ','workreport',''))),'') then '用ascii編碼替換方式去空格成功'

else '去空格失敗'

end執行結果是:

用ascii編碼替換方式去空格成功

解釋:之所以case塊中前兩個條件沒有被攔截,是因為這裡的空格並不是常規的空格,可以使用ascii函式來獲取該處空格的ascii碼,然後再使用char函式根據ascii碼獲取此處的特殊空格,最後用replace函式替換之。

字串無法replace

臥槽。老子發現了這個坑。很簡單的字串我覺得replace很容易實現,臥槽,巨坑啊。如下 在電腦上我實現了下 v2a v232.replace v2a v223 v223 v232.我以為可以和split連續使用,結果發現不行,必須用兩步走。ss videos laugh s25052444 102 ...

sqlserver字串拆分

1 sql對字串的處理能力比較弱,比如我要迴圈遍歷象1,2,3,4,5這樣的字串,如果用陣列的話,遍歷很簡單,但是t sql不支援陣列 2 自己來實現 create function udf split words nvarchar max 原始字串 splitstr varchar 50 分割字元...

Sqlserver 字串分割

字串分割,返回字串按指定分割符分割後長度 使用 select dbo.fun get strarraylength 1,2,3,4 create function dbo fun get strarraylength str varchar 1024 要分割的字串 split varchar 10 ...