ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java – 查询构建器 – 必须/不应该

2019-06-26 17:47:36  阅读:246  来源: 互联网

标签:java search-engine lucene elasticsearch


我是搜索引擎领域的新手,我想知道是否有人可以帮助我澄清Must / MustNot和Should / ShouldNot搜索查询.

我的理解如下:

Must / MustNot查询是绝对定义(即,结果必须/不得包含指定的字段)

Should / ShouldNot查询是相对定义(即,在某些情况下,它应该/不应该包含指定的字段)

如果这是正确的,有人可以向我提供一个例子,说明你何时使用应该/不应该……如果我的理解是完全错误的 – 有人会善意地为我解释(或指向一个好的网站) )?

谢谢!

PS.我正在使用弹性搜索(基于Lucene) – 但欢迎任何示例/解释

解决方法:

你的理解是正确的.不应该在找到结果时获得较低的重量,但绝不能包括在内.

当术语可能属于不同的域时,不应该使用,但在某些情况下,仍然可能与我正在寻找的文档位于同一文档中.例如,谷歌知道我是一名Java程序员.当我问“蚂蚁”时,第一个结果将是“Apache Ant”.我可能不会使用“-Apache”,或者我可能不应该使用“Apache”,以防某些页面在Apache natives worldview中描述蚂蚁的特殊位置.

或者,例如,我正在寻找一个免费软件来完成任务;如果它不贵或者他们有个人执照,我会考虑付费的.因此,我不应该“立即购买”,结果将包括付费软件,但列表中较低.

标签:java,search-engine,lucene,elasticsearch
来源: https://codeday.me/bug/20190626/1296403.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有