Is there a way to remove all whitespaces from a specific column for all values?
取代 all spaces:
all spaces
UPDATE `table` SET `col_name` = REPLACE(`col_name`, ' ', '')
删除所有 tabs字符:
tabs
UPDATE `table` SET `col_name` = REPLACE(`col_name`, '\t', '' )
To remove all new line characters :
new line
UPDATE `table` SET `col_name` = REPLACE(`col_name`, '\n', '')
Http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_replace
删除列的 first and last space(s):
first and last space(s)
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', '');
工作查询:
SELECT replace(col_name , ' ','') FROM table_name;
While this doesn't :
SELECT trim(col_name) FROM table_name;
使用以下查询,您可以删除 MySQL 中的前导空格和尾随空格。
UPDATE `table_name` SET `col_name` = TRIM(`col_name`);
只需使用下面的 sql,就可以完成:
SELECT replace(CustomerName,' ', '') FROM Customers;
你可以在这里测试这个样本: W3学校
因为问题是如何替换所有的空格
UPDATE `table` SET `col_name` = REPLACE (REPLACE(REPLACE(`col_name`, ' ', ''), '\t', ''), '\n', '');
注意: 有两种类型的空白,那些来自空格栏和那些来自标签按钮,你需要做一个替换都。我怀疑这就是为什么 TRIM 函数似乎并不总是起作用的原因。
所以
replace(replace(<field_name>,' ',''),' ','')
(可能有更多类型的空白,但这是我发现的两种)