问题标签 [booleanquery]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
34 浏览

elasticsearch - Elasticsearch 使用布尔查询的不同结果

我有两个查询,我认为应该返回相同数量的结果。首先是在 2 个字段上带有 query_string 的“必须”。例如

这给了我 120 个结果。第二个是“应该”查询,在标题字段或摘要上搜索带有通配符的相同字符串。例如:

在这里,我得到 109 个结果。所以我的点击次数减少了 11 次。有人知道为什么吗?

0 投票
1 回答
305 浏览

java - Lucene BooleanQuery 错误结果

我创建了一个 Lucene RAMDirectory 来收集来自不同来源的数据并使它们可以快速搜索。我花了很多时间来了解不同的分析器和索引策略,但在某些情况下查询结果不是预期的。

这是一个演示类:

如果我搜索“ox”、“gray fox”或“-(frankenstein)”,代码运行良好。但我没有“DR-(弗兰肯斯坦)”的结果。我不知道我做错了什么。所以欢迎任何建议。

0 投票
2 回答
136 浏览

python - Pandas 旋转数据框和多列布尔比较

我有一个表格的旋转数据框

我正在尝试使用可以被认为是(逐个单元格)的逻辑创建另一个名为“标志”的主要列,其中包含 B、G、S 子列

所以想要的结果(只显示新列)

我尝试了很多方法,以下方法比其他方法更接近

但这有两个问题

  1. 右下角的布尔输出不正确。这应该是正确的,因为相应的单元格价格小于 2.0 并且相应的单元格单元大于 13.5。
  2. 它给出警告“用户警告:不同级别之间的合并可能会产生意想不到的结果(左侧 2 个级别,右侧 1 个级别)”。我似乎无法将主要列名“标志”放入数据框中。

关于修复布尔条件并在正确级别合并的任何想法?

生成初始数据帧的代码是

0 投票
1 回答
4426 浏览

c# - 使用对象初始化器 NEST 5.x 的弹性搜索嵌套动态查询

嗨,我是弹性嵌套 API 的新手,我正在使用嵌套 5.x。我目前正在开发某种高级搜索页面,因此当用户不检查条件时,我不必在我的查询中包含该过滤器。我正在尝试将 must 运算符下的 2 个查询与使用嵌套的对象初始化方法结合起来。如何实现?我正在关注 [ https://www.elastic.co/guide/en/elasticsearch/client/net-api/current/bool-queries.html]上的示例

var secondSearchResponse = client.Search(new SearchRequest { Query = new TermQuery { Field = Field(p => p.Name), Value = "x" } && new TermQuery { Field = Field(p => p.Name), Value = "y" } });

但它不起作用,因为 Field 类不接受类型参数。

我还尝试从本主题 [ Nest Elastic - Building Dynamic Nested Query中遵循这种方法

这是我的代码

但这会返回零结果。如何做到这一点?无论如何谢谢。

编辑 :

这是参数变量定义。其搜索关键字的 apoco 模型

IDXNetAnnouncement 是搜索结果的 poco 模型。它实际上是一种存储在弹性服务器上的文档类型

0 投票
1 回答
324 浏览

lucene - 多个字段之间的布尔查询

我有三个字段说F1, F2, F3。我想找到所有三个字段值为空的所有文档。我可以通过使用来实现这一点BooleanQuery吗?如果我MUST_NOT对所有三个字段都使用子句,那么它将不会返回具有这些字段之一作为非空值的文档。

我正在谈论实施这样的事情

这肯定行不通。我怎样才能做到这一点?任何帮助都会有所帮助。

0 投票
3 回答
4625 浏览

python - Python 查询处理和布尔搜索

我有一个倒排索引(作为字典),我想将一个布尔搜索查询作为输入来处理它并产生结果。

倒排索引是这样的:

现在,给定一个布尔搜索查询,我必须返回结果。

例子:

布尔搜索查询:test AND try 结果应该是所有包含单词test和try的文档。

布尔搜索查询:test OR try 结果应该是所有具有测试或尝试的文档。

布尔搜索查询:test AND NOT try 结果应该是所有有测试但没有尝试的文档。

如何构建这个搜索引擎来处理给定的布尔搜索查询?

提前致谢!

0 投票
4 回答
122 浏览

sql-server - SQL where 子句中的布尔条件

我想写一个 sql 查询来获取数据:

我在下面的查询中尝试了是和否

现在我也想合并所有条件,任何人都可以建议我如何实现这一点

0 投票
1 回答
236 浏览

elasticsearch - Liferay:BooleanQuery 不得有某些值

我想创建一个具有多个值的搜索,例如:

我想在数据库中搜索所有不包含该类别的文章:

Car Bus 摩托车卡车 在数据库中存在类别为“汽车”的文章,但不包括类别“汽车”和“公共汽车”(一篇文章和一个类别)。所以......我需要做一些“或”(我需要所有没有“汽车”或“公共汽车”或“卡车”等类别的文章..)

我们使用 Liferay 6.1 进行此搜索。

0 投票
2 回答
14503 浏览

android - 如何在不使用 SELECT 查询的情况下获取 Room 持久数据库中具有布尔值 true(或 1)的行数?

我正在我的项目中使用 Room 持久数据库。我有一个表,其中有一个布尔值列,如 0 或 1,现在我想要所有值为真(或 1)的布尔值的计数。

我知道我可以通过使用 where 子句获取所有选定行的计数来使用选择查询来实现这一点!

但我不想为此使用带有 where 子句的 Select 查询,因为它会加载所有行,然后我会得到计数,但我想要计数而不加载任何行!请提出其他简单的解决方案!谢谢!

0 投票
0 回答
312 浏览

php - Elasticsearch 5.6 结合了常数分数和布尔查询

我目前正在为一个使用PHP API查询Elasticsearch 5.6索引的网站开发搜索引擎。我在特定查询上被困了很长时间,这就是为什么我正在寻求社区的帮助。让我提供更多细节:

  • ES 索引包含人的文档,并且这些人具有出生名和姓氏(如果该人是未婚的男性或女性,则这两个值相同)。还有一些信息,例如名字、日期和其他与我的问题无关的信息。
  • 网站搜索引擎只有一个字段用于出生姓名和姓氏。

我被要求创建一个查询,所以每当用户在该字段中输入一个值时,我必须得到以下结果:

  • 如果该值与一个人的出生名或姓氏 100% 匹配,我应该让他们获得完全相同的分数值
  • 如果该值与 100% 不匹配,那么我将得到至少 5 个字符的结果,这些字符的出生名或姓氏相似
  • 必须以非常具体的方式对结果进行排序。首先,匹配 100% 的结果按日期、出生姓名和姓氏的字母顺序排序,然后部分匹配的结果按分数、日期和字母顺序排序。

我查询的字段分别命名为nom.unsplitnom.ngramnomNaissance.unsplitnomNaissance.ngram

我一直在尝试这个查询,它为搜索出生名提供了完美的结果,但没有找到姓氏(显然)。如果我将另外两个字段添加到查询中,结果仍然不令人满意,因为如果姓氏匹配,弹性搜索会给出更好的相关性分数,而不是出生名匹配。

ES查询

我还尝试了带有过滤器和提升的 constant_score 查询。它有效,但前提是我正在寻找 100% 的结果。我尝试将布尔查询和常量分数查询结合起来,但我无法让它工作。我想补充一点,搜索引擎包含更多字段,因此我需要能够将此特定查询插入到更大的 bool 查询中,该查询收集了我已经在使用的所有子查询。我会接受任何建议,如果需要,我会提供补充信息。