MYSQL:模式匹配

时间:2012-02-03 17:38:32

标签: mysql pattern-matching

我正在尝试编写一个sql语句,通过比较它的不同变体

来获取唯一记录

例如,我有一部电影的独特记录,让我们说Bad Boys II。

但是用户会搜索;
 坏男孩2
 badboys2>
 badboys II(2003)
 坏男孩2(2003)  等

.... LOWER(movie_title)LIKE'%$ search_query%'

以上查询不会返回我希望得到的唯一记录。任何帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作:
1)将字符串中的单词放入数组中 2)寻找每个单词的匹配:

SELECT * FROM table WHERE LOWER(movie_title) LIKE '%$search_words[$i]%'

Howether,如果您使用此代码搜索“bad booys 2”,您将收到所有包含“bad”,“boys”和2的单词的电影。