mysql部分单词搜索

时间:2014-02-10 16:23:58

标签: mysql full-text-search

我想像下面的查询一样搜索,但它在MySQL中不起作用

 SELECT * FROM products WHERE MATCH (title,description) 
 AGAINST ('test' IN BOOLEAN MODE); 

我想要低于输出

  

testproduct,producttest

有人可以帮我吗??

2 个答案:

答案 0 :(得分:34)

目前,只支持前缀,不支持后缀:

SELECT * FROM products WHERE MATCH (title,description) 
 AGAINST ('test*' IN BOOLEAN MODE); 

http://dev.mysql.com/doc/refman/4.1/en/fulltext-boolean.html

顺便说一下,当网站请求很大时,MySQL全文搜索将成为瓶颈,对于某些特殊搜索词来说,它是易受攻击和不稳定的,因此往往会导致查询速度慢和数据库崩溃。尽快使用弹性搜索。

答案 1 :(得分:-6)

使用LOCATE代替......或者更好的是,使用Lucene并忘记MySQL进行搜索。