0

我有一个旧数据库,其中列类别存储在错误的形状中......其中有额外的空间,例如

Hotels     in     London
Hotels        in     Manchester

有没有办法我可以改变表格内的这个空间......如果我可以从类别(中间空间)中删除额外的空间以获得这样的输出

Hotels in London

谢谢

4

4 回答 4

3

您可以使用REPLACE类似的功能

update table set columnName= REPLACE(columnName,'      ',' ')
于 2013-02-05T18:04:22.590 回答
3

将数据下拉为您可以处理的值,然后使用以下方法删除额外的空白:

$foo = trim(preg_replace( '/\s+/', ' ', $foo ));

然后将其写回数据库。

于 2013-02-05T18:06:43.557 回答
0

我有类似的情况,在搜索特定字段的值时,我必须删除多余的空格。

我用过mysql的replace功能,像这样

SELECT * FROM `tableName` WHERE post_id = 'xxx' AND replace(`fieldName`,' ','') Like '%JobOppurtunity%' ;

在这里,replace 会递归删除 fieldName 中的所有空格并连接字段值,然后在 LIKE 关键字之后搜索我的连接字符串。

因此,如果我有字段值“Job Oppurtunity”,它会将其转换为“JobOppurtunity”,显然我已经通过任何字符串函数或正则表达式连接了我的搜索字符串。就像它这样做了

$txt_search_qry = trim(preg_replace( '/\s+/', '', $txt_search_qry));
于 2015-02-26T08:41:25.317 回答
0

我发现的另一种快速简单的方法是:

REPLACE(REPLACE(REPLACE(columnName,' ',' !'),'! ',''),' !',' ')
于 2015-03-12T13:53:02.213 回答