我在SQL中有两个字符串,REPLACE函数只适用于其中一个,为什么呢?
例1:
SELECT REPLACE('18 286.74', ' ', '')
Run Code Online (Sandbox Code Playgroud)
例2:
SELECT REPLACE('z z', ' ', '')
Run Code Online (Sandbox Code Playgroud)
示例1的输出仍为"18 286.74",而示例2的输出为"zz".为什么SQL对这两个字符串的反应不同?
更新:
当运行select replace('123 123.12', ' ', '')
正常,仍然没有'18 286.74'.
Jab*_*ezz 12
按以下方式测试.
select unicode(substring('18 286.74', 3, 1))
Run Code Online (Sandbox Code Playgroud)
如果代码返回32然后它是一个空格,如果没有,它是一个不同的Unicode字符,你的替换''将无效.