麻烦在MySql中摆脱空格



我在MySql中有一个包含产品描述的列。有时描述包含单词之间的一个空格,我想把它变成一个空格,所以我用这个查询找到了它:

 SELECT * FROM `database`.`PRODUCTS` 
 WHERE `PRODUCTS`.`description` LIKE '%  %'

,然后用:

 UPDATE `database`.`PRODUCTS` 
 SET `PRODUCTS`.`description` = REPLACE(`PRODUCTS`.`description`,'  ',' ')

但是它并没有删除所有的双空格!有一些"特殊"的空间(我怀疑)不同的ascii码- 0xA0,0xC2

我怎么能SELECT它和删除它?

谢谢

这些不是'特殊'空格-它们不是ascii码-如果它们在你的数据库中,那么你的代码中有错误,把它们放在那里。

为什么不直接替换它们呢?

....
SET PRODUCTS.description = REPLACE(
    REPLACE(
       REPLACE(PRODUCTS.description
             ,CHAR(160),' ')
           , CHAR(194), ' ')
       , '  ', ' ');

最新更新