发现了更高效的方法:sql 空格变问号;sql 无法 去掉 空格 ;sql rtrim 失效;(转载)

https://www.cnblogs.com/hao-1234-1234/p/13232281.html

写程序 :1转换成二进制编码,然后替换。2网页空格符号替换。3普通空格替换。

--------------------------------------------

一、问题描述:

数据库中字段 nvarchar类型 存放数据如下:

 '3.3×10'

 原本以为右侧是一个空格,但是rtrim方法无效,发现右侧并不是空格,是一个特殊字符或特殊编码  ,只是看起来像空格。

二、解决方案:

update WaterQuality set FecalColiform=replace(FecalColiform,'','') ; --- 1
update WaterQuality set FecalColiform=replace(FecalColiform,'','') ; --- 2
update WaterQuality set FecalColiform=replace(FecalColiform,'','') ; --- 3
update WaterQuality set FecalColiform=replace(FecalColiform,'','') ; --- 4

 

你可能有一个疑问 为什么重复执行相同的操作??

答:''  这个东西看起来相同,实际又各不相同。

你需要完整的复制出该列,然后全部选中看他们的后面凹凸状态 是否都为空了。

然后把那些没修改成功的空格单独复制出来再修改。

 例如 复制出放入单引号中观察  '2.0×10'  ,然后复制出它的特有的‘’,然后在执行一次修改。

修改前:

sql  去掉 空格
    





            
sql 空格变问号;sql 无法 去掉 空格 ;sql rtrim 失效;(转载)

修改后:

sql  去掉 空格
    





            
sql 空格变问号;sql 无法 去掉 空格 ;sql rtrim 失效;(转载)

 

三、失败经验:

1.trim方法

select ltrim(' 3.3×10') --去除左边的空格
select rtrim('3.3×10 ') --去除右边的空格
select ltrim(rtrim(' 3.3×10 ')) --去除首尾空格

结果有效。

但是真实的数据是这样的  '3.3×10'

select ltrim(rtrim('3.3×10')) --去除首尾空格  

结果无效。

 

参考过的文章:

https://zhidao.baidu.com/question/183968041.html

https://www.cnblogs.com/TurboWay/p/5924445.html

 

相关文章:

  • 2021-11-14
  • 2022-12-23
  • 2021-12-17
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-12
猜你喜欢
  • 2022-01-02
  • 2022-12-23
  • 2021-12-31
  • 2022-12-23
  • 2021-05-17
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案