有没有一种方法可以从所有值的特定列中删除所有空格?
UPDATE `table` SET `col_name` = REPLACE(`col_name`, ' ', '')
制表符
字符:UPDATE `table` SET `col_name` = REPLACE(`col_name`, '\t', '' )
要删除所有的换行
字符:
UPDATE `table` SET `col_name` = REPLACE(`col_name`, '\n', '')
http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_replace
如果需要删除列的首尾空格,可以使用以下方法:
UPDATE `table` SET `col_name` = TRIM(`col_name`)
http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_trim
如果您想删除所有类型的空格,可以将所有这些函数组合使用:
UPDATE `table` SET `col_name` = REPLACE(REPLACE(REPLACE(`col_name`, ' ', ''), '\t', ''), '\n', '');
TRIM
只会从字符串开头和结尾处移除空格。 - Michael Miortable
SET col_name
= REPLACE( col_name
, '\t' , '' ) - Chellatable
SET col_name = REPLACE(col_name, '\r', ''); - Chris Sim由于问题是如何替换所有的空格
UPDATE `table`
SET `col_name` = REPLACE
(REPLACE(REPLACE(`col_name`, ' ', ''), '\t', ''), '\n', '');
工作查询:
SELECT replace(col_name , ' ','') FROM table_name;
虽然这不会:
SELECT trim(col_name) FROM table_name;
UPDATE `table_name`
SET `col_name` = TRIM(`col_name`);
replace(replace(<field_name>,' ',''),' ','')
(可能还有其他类型的空格,但这是我发现的两种)
这对我有效
UPDATE table SET col_name = TRIM(REPLACE(REPLACE(REPLACE(col_name, '\r', ' '), '\n', ' '), '\t', ' '));