在Mysql中搜索特殊字符

时间:2016-05-14 08:45:43

标签: mysql search

如果我有一个表files并且它有一个列title,并且某些标题采用以下格式:

google: and facebook
stack: overflow

现在我尝试在我的应用中添加搜索功能,该搜索功能会执行LIKE '%word%'查询。但是,如果人们搜索google and facebook它没有找到任何内容,除非他们专门搜索google: and facebook。 我知道LIKE做了什么以及为什么它没有给出我正在寻找的结果,我只是想知道是否有在mysql表中搜索并忽略特殊的方法比如: ' - . , "等等。

感谢。

3 个答案:

答案 0 :(得分:1)

比较前使用REPLACE功能。

... REPLACE( fieldname, ':', '') LIKE %word%

答案 1 :(得分:0)

您可以使用正则表达式

MYSQL Manual

答案 2 :(得分:0)

替代方法是将搜索字符串中的所有空格替换为'%',或者将搜索字符串(空格作为分隔符)展开,并使用OR语句连接不同的部分。