当前位置: 首页 > 知识库问答 >
问题:

ElasticSearch DSL->组合多个过滤器并消除元数据

韦星文
2023-03-14

下面的查询将返回product_id为12的文档。

request = Search(using=client, index='myIndex') \
            .filter("match",product_id=12) \
            .source(myFieldsArray)

现在,我还希望删除parent为空的所有文档。
我还希望不返回元数据,只返回实际数据(在kopf上,我对查询字符串使用filter_path=hits.hits._source.*)

我如何在弹性搜索-DSL上做这些?

详细信息:使用Elasticsearch 2.4

共有1个答案

傅啸
2023-03-14

筛选器可以链接,只需.filter(离开。为了消除元数据,您必须设置.params(filter_path=“hits.hits._source.*”)这样的参数

 类似资料:
  • 问题内容: 我想删除原始数组(是)中的特定元素。我那个数组,并返回新的数组。但这不会影响此代码中的原始数组。我如何轻松地从原始数组中删除那些元素? 问题答案: 该方法不仅用于收集元素集,而且还用于收集元素集。如果您想通过评估条件来获得一项,那么您还有其他三种选择。,并因此只有当你想对多个项目的操作,你应该考虑使用过滤功能。就需要完成的工作而言,没有一个答案是完整的。他们使用过滤器功能隔离一个集合(

  • 问题内容: 我想过滤出字段“ A”等于“ a”的文档,并且我想同时考虑字段“ A”,当然不包括先前的过滤器。我知道您可以将过滤器“置于查询之外”,以便在不应用该过滤器的情况下获得构面,例如: elasticsearch 单反 这非常好,但是如果我有多个滤镜和构面,每个滤镜和构面应该互相排斥,会发生什么?例: 也就是说,对于方面AI,希望保留除A:a以外的所有过滤器,对于方面B希望保留除B:b以外的

  • 我想结合两个筛选函数来选择表中的几个元素。我的代码如下所示: 中的元素必须在第一个并且在一行中。因此,如果返回3个元素,它们必须在一行中,后面是中的元素。我怎样才能做到呢?我可以组合上面的筛选功能吗?

  • 删除节点内指定的消息过滤器。 调用: web3.shh.deleteMessageFilter(id) 参数: id:String, 过滤器ID,shh.newMessageFilter()返回 返回值: Boolean: 成功时返回true,失败时返回false 示例代码: web3.shh.deleteMessageFilter('2b47fbafb3cce24570812a82e6e93c

  • 问题内容: 我需要将2个多维数组合并在一起以创建一个新数组。 这两个数组是从和创建的,我需要将它们彼此关联。 数组#1 阵列#2 新阵列 我正在使用的当前代码有效,但仅适用于数组中的最后一项。 我想通过循环该函数在每个循环中擦除新数组。 我该如何纠正? 问题答案: []会将其附加到数组而不是覆盖。

  • 一旦我将类别从数组更改为映射,我想我可以使用多个where条件来过滤文档 现在问题2,firebase要求为复合查询添加索引。我在每个文档中保存的类别是动态的,我无法提前添加这些索引。在这种情况下,理想的解决方案是什么?如有任何帮助,不胜感激。