繁体   English   中英

MySql,搜索BOOLEAN MODE中有两个关键字的列

[英]MySql, search columns that have two keywords in BOOLEAN MODE

我为我的网站制作了一个搜索系统。

假设数据库中有 5 个数据。

  1. 苹果 macbook air 评论
  2. 苹果 iMac 评论
  3. 苹果 iPhone 评论
  4. iPhone 4 拆箱审查
  5. iPhone 越狱回顾

用户在搜索输入中键入“iphone review”。

我想这样显示结果

  1. 苹果iPhone 评论
  2. iPhone 4 拆箱审查
  3. iPhone越狱回顾

我可以成功打破搜索词并使用boolean模式。

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)

这个对我有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM