Elastic Search:常规过滤器和条件过滤器

2024-02-16

我正在使用弹性搜索,带有查询 match_all 和过滤。在我的情况下,我想应用通用过滤器并按条件过滤。

这里是伪的:

  1. 查询:匹配所有(工作正常)
  2. 过滤 d1 和 d2 之间的日期范围(没有项目符号 3 也能正常工作)
  3. 过滤器(仅在字段存在时应用,但如何应用?)
  4. etc.

请参阅以下代码。如果“组”字段存在,我只想应用“组”过滤器!在这种情况下,“存在”过滤器不会生效。

    "query":
    {
        "filtered":
        {
            "query":
            {
                "match_all": {}
            },
            "filter":
            {
                "bool":
                {
                    "must":
                    {
                        "range":
                        {
                            "date": {
                                "from": "2015-06-01",
                                "to": "2015-06-30"
                            }
                        }

                    },
                    "must_not":
                    {
                        "term":
                        {
                            "e.state": 0
                        }
                    }
                }
            },
            "filter":
            {
                "bool":
                {
                    "must":
                    {
                        "exists": {"field": "groups"},
                        "filter":
                        {
                            "bool":
                            {
                                "must":
                                {
                                    "term": {"groups.sex": "w"}
                                },
                                "should":
                                {
                                    "terms": {"groups.categories.id": [7,10]}
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

Try this

{
  "query": {
    "filtered": {
      "query": {
        "match_all": {}
      },
      "filter": {
        "bool": {
          "must": [
            {
              "range": {
                "date": {
                  "from": "2015-06-01",
                  "to": "2015-06-30"
                }
              }
            },
            {
              "bool": {
                "should": [
                  {
                    "missing": {
                      "field": "groups"
                    }
                  },
                  {
                    "bool": {
                      "must": {
                        "term": {
                          "groups.sex": "w"
                        }
                      },
                      "should": {
                        "terms": {"groups.categories.id": [7,10]}
                      }
                    }
                  }
                ]
              }
            }
          ],
          "must_not": {
            "term": {
              "e.state": 0
            }
          }
        }
      }
    }
  }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Elastic Search:常规过滤器和条件过滤器 的相关文章

随机推荐

  • 了解 XDR 规范以创建 *.x 文件

    我浏览了互联网上的几个网站 实际上想知道我们如何在规范中编写规范 x文件以生成等效函数 通常 您可以从 x 文件生成三 组 代码 消息 xdr 编码器 解码器函数 客户端存根和服务器存根 当然 您也可以手动完成 但要做到正确的工作量太大 使
  • 如何从文件名中删除文件扩展名(VBA)

    我有一个文件名变量 其中包含 Filename csv 要从我使用的路径中提取文件名 Filename Dir fStr where fStr从我选择的文件中检索 我只需要文件名而不需要 csv 我该如何删除 csv 扩大 最好使用类似的函
  • 如何使用 传递附加信息?

    我需要将文件上传到在 tomcat 上运行的 servlet 除了文件之外 我还想允许用户添加与上传的文件关联的评论 我尝试了以下方法 但没有成功
  • bluez5 中哪个工具取代了 gatttool?

    好像自从commit b1eb2c4cd057624312e0412f6c4be000f7fc3617 gatttool已被弃用 但我找不到任何信息 什么取代了 gattool 我在 gatttool 上研究过的每个 Python 蓝牙 L
  • 使用索引数据计算非结构化文档中的所有唯一单词

    我已将非结构化 HTML 文档加载到 Marklogic 中 并且 对于任何给定的文档 URI 我需要一种使用索引 词典来提供所有唯一单词的字数统计的方法 例如 假设我有以下文件 保存在 URI html example html 下 h1
  • C++ 中的可空值

    我正在用本机 C 创建数据库访问层 并且正在寻找支持 NULL 值的方法 这是我到目前为止所拥有的 class CNullValue public static CNullValue Null static CNullValue nv re
  • UITextView contentInset 在 iOS 7 上的 UITextView 中不起作用?

    我正在尝试设置一个UITextView s contentInset财产 这样做时 UIEdgeInset s top变量工作得很好 所以 self textView setContentInset UIEdgeInsetsMake 50
  • C# 中的链接属性和意外结果

    我只是快速浏览了一下本文 http blogs msdn com ricom archive 2006 09 07 745085 aspx 特别是关于为什么他选择使用结构 字段而不是类 属性 并看到这一行 属性的结果不是真正的左值 因此我们
  • 同步算法

    有什么好的同步算法参考吗 我对在多个用户之间同步以下类型数据的算法感兴趣 日历 文件 列表和大纲 我不仅仅是在寻找目录内容的同步a la rsync http en wikipedia org wiki Rsync 我有兴趣合并单个文件中的
  • 如何在 Angular2 材质表中映射动态标题和表内容

    我在带有动态表内容和标题的 Angular 材料表中遇到问题 这是我的表的 JSON 数据 let dataobj key Data1 value ENF key Data2 value 10598489700 key Data3 valu
  • 滚动RecyclerView时Cardview的数据发生变化

    我是一名初级 Android 开发者 我用 CardView 制作了一个应用程序 但是当我滚动 RecyclerView 时 它正在更改其内容 Video http sendvid com 60ui8cay http sendvid com
  • 如何强制复选框的文本不换行?

    这就是我的 LinearLayout 水平 行的样子 我希望复选框的文本在一行上 按钮不必那么宽 它们仍然有足够的空间 并且复选框文本稍微加长 我的 XML 中的内容
  • 仅列出当前目录中超过 x 天的所有文件

    我是 unix 新手 在其他问题中无法得到适当的结果 我只想列出当前目录中早于 x 天的文件 我有以下限制 仅列出当前文件夹中早于 30 的文件 天 输出不应包含目录和子目录 这应该列出类似于 ls 命令的文件 输出应该是这样的file1
  • Objective-C:何时知道您正在滥用全局变量的 SIngleton 方法

    因此 我的客户 iPhone 应用程序在过去几周内已从 5 个左右的课程增加到超过 25 个课程 对于如此大的 无论如何对于 iPhone 来说 类结构 我一直在利用 Singleton 类来访问全局变量 问题是 每当我需要访问我正在处理的
  • NSString、NSNumber 类型属性中,保留还是复制哪个更好? (NSArray 怎么样?)

    如果对象具有 type 属性NSString or NSNumber 哪个更好 retain or copy 我认为这些对象是不可变的 不能改变对象的状态 所以复制更好 我看到了为什么复制比分配 NSMutableString 并更改它更好
  • 如何在数据库级别为一对多关联设置唯一性?

    我的问题很简单 但我找不到任何 GORM 语法 考虑下面的类 class Article String text static hasMany tags String static constraints tags unique true
  • 如何分配给锯齿状数组?

    我正在编写一个简短的程序 最终将玩四连棋 到目前为止 pastebin https pastebin com wk5crs7g 有一个部分不起作用 我在第 16 行声明了一个锯齿状数组 char board Enumerable Repea
  • 将 Eclipse 工作区从 ~ 移动到新目录?

    好吧 我犯了一个错误 将我的主目录 又名 home user 设置为 RHEL6 机器上的工作区位置 我想将我的工作空间更改为 workspace 但是 我似乎无法通过复制文件来做到这一点 对于一些背景 我当前正在处理并已在 工作区下完全设
  • java.lang.NoSuchFieldError:DEF_CONTENT_CHARSET

    我正在尝试运行 java 程序 但收到以下运行时错误 错误如下所示 Exception in thread main java lang NoSuchFieldError DEF CONTENT CHARSET at org apache
  • Elastic Search:常规过滤器和条件过滤器

    我正在使用弹性搜索 带有查询 match all 和过滤 在我的情况下 我想应用通用过滤器并按条件过滤 这里是伪的 查询 匹配所有 工作正常 过滤 d1 和 d2 之间的日期范围 没有项目符号 3 也能正常工作 过滤器 仅在字段存在时应用