在MySQL中获得更好的全文搜索结果(3)
添加时间: 2008-4-28 23:43:44 作者: Oracle指导 阅读次数:8 来源: http://www.d9soft.com
2 rows in set (0.00 sec)
在此,MATCH()将作为参数传递给它的字段中的文字与传递给AGAINST()的参数进行比较,如果有匹配的,那就按照正常的方式返回。注意您可以传递不止一个字段用MATCH()来查看-只需用逗号来分割字段列表。
当MySQL收到了一个全文搜索的请求,它就在内部对每个记录进行评分,不匹配的记录得分为悖案喙亍钡募锹蓟岬玫奖取安惶喙亍钡募锹枷喽愿叩姆质O喙匦允怯蒑ySQL的一系列区分标准来决定的,查看MySQL的用户手册可以得到更多的信息。
想看到每个记录的评分如何,只需要返回MATCH()方法作为结果集的一部分,如下所示:
mysql> SELECT id, MATCH (data) AGAINST ('rock') FROM reviews; |
3 rows in set (0.00 sec)
4、使用逻辑搜索修饰符(Boolean search modifiers)
您还可以使用逻辑搜索修饰符来进行更精确的搜索,这通过在AGAINST语句中添加特殊的IN BOOLEAN MODE修饰符来实现,在以下的例子中,将查找含有单词“single”但是没有“Madonna”的记录:
mysql> SELECT id FROM reviews WHERE MATCH (data) AGAINST ('+single -madonna' IN BOOLEAN MODE); |
上下文章:
上一篇文章: 数据库管理系统:大数据的备份(4)完 下一篇文章: Oracle公司称:Linux系统渐入佳境
相关文章:
相关软件:

