我为我的网站制作了一个搜索系统。
假设数据库中有5个数据。
- 苹果macbook空气评论
- 苹果iMac评论
- 苹果iPhone评论
- iPhone 4开箱评论
- iPhone越狱评论
用户在搜索输入上键入"iphone评论"。
我想像这个一样显示结果
- 苹果iPhone评论
- iPhone4开箱评论
- iPhone越狱评论
我可以成功地打破搜索词和使用布尔模式。
SELECT * FROM BOOKMARK WHERE MATCH title AGAINST ('iphone* review*' IN BOOLEAN MODE)
但它不会像上面那样显示结果。
它搜索带有iphone或评论词的数据。
你能帮我解决这个问题吗?
您必须在单词前面使用+
符号,以确保它出现在每个命中中。
SELECT * FROM BOOKMARK WHERE MATCH title AGAINST ('+iphone +review' IN BOOLEAN MODE)
有关更多信息,请参阅手册
您可以尝试以下查询:
SELECT * FROM BOOKMARK WHERE MATCH title AGAINST ('"iphone review"' IN BOOLEAN MODE)
这个对我有用。