我想像下面的查询一样搜索,但它在MySQL中不起作用
SELECT * FROM products WHERE MATCH (title,description)
AGAINST ('test' IN BOOLEAN MODE);
我想要低于输出
testproduct,producttest
有人可以帮我吗??
答案 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进行搜索。