我是搜索引擎 Realm 的新手,我想知道是否有人可以帮助我阐明Must / MustNot和Should / ShouldNot搜索查询。
我的理解如下:
Must / MustNot查询是绝对定义(即,结果必须/必须不包含指定字段)
Should / ShouldNot查询是相对定义(即,在某些情况下,它应该/不应包含指定的字段)
如果是正确的话,有人可以为我提供您何时应该使用Should / ShouldNot的示例吗?如果我的理解是完全错误的,那么有人会为我解释一下吗(或将我指向一个好的网站) )?
谢谢!
附言我正在使用 flex 搜索(基于Lucene)-但欢迎提供任何示例/说明
最佳答案
您的理解是正确的。被发现时,结果不应变轻,但绝不能包括在内。
如果该术语可能属于不同的域,但在某些情况下仍与我要查找的术语在同一文档中,则不应使用该术语。例如,Google知道我是Java程序员。当我问“ant”时,第一个结果将是“Apache Ant”。我可能不能使用“-Apache”,或者我应该使用“Apache”,以防某些页面描述了 Ant 在Apache原生世界 View 中的特殊位置。
或者,例如,我正在寻找可以执行任务的免费软件;不过,如果价格不昂贵或他们有个人执照,我会考虑选择付费的。因此,我将不应该“立即购买”,并且结果将包括付费软件,但在列表中较低。