我在MySql中有一个包含产品描述的列。有时候描述中包含更多单词之间的空格,我想把它变成一个空格,所以我用这个查询找到了它:
SELECT * FROM `database`.`PRODUCTS`
WHERE `PRODUCTS`.`description` LIKE '% %'
然后通过以下方式修复它:
UPDATE `database`.`PRODUCTS`
SET `PRODUCTS`.`description` = REPLACE(`PRODUCTS`.`description`,' ',' ')
但它并没有删除所有的双重空格!有一些“特殊”空间(我怀疑)不同的ascii代码 - 0xA0,0xC2
我如何SELECT
并删除它?
由于
答案 0 :(得分:0)
这些不是'特殊'空格 - 它们不是ascii代码 - 如果它们在你的数据库中,那么你的代码就会出现错误。
为什么不直接替换它们?
....
SET PRODUCTS.description = REPLACE(
REPLACE(
REPLACE(PRODUCTS.description
,CHAR(160),' ')
, CHAR(194), ' ')
, ' ', ' ');