elasticsearch - 使用值数组的 Elasticsearch agg 过滤器
问题描述
{ "colors":["red","black","blue"] }
{ "colors":["red","black"] }
{ "colors":["red"] }
{ "colors":["orange, green"] }
{ "colors":["purple"] }
如何运行过滤数组字段中包含的特定值的 agg?例如,我只想要“红色”的计数,并希望从聚合结果中排除它的其他兄弟。
注意:我不能对“red”使用“include”模式。这个例子很简单,现实世界的例子有一长串唯一的字符串值。
我想使用字符串值数组过滤 agg。
解决方案
来自文档
对于基于精确值的匹配,include 和 exclude 参数可以简单地采用一个字符串数组,这些字符串表示在索引中找到的术语:
{
"aggs": {
"colors": {
"terms": {
"field": "colors",
"include": [ "red","black" ]
}
}
}
}
推荐阅读
- r - R - 如何创建序列
- r - 如何创建直接链接到 URL 的 Rmarkdown 提取文章
- c - 如何通过管道()从子进程(exec)与父进程通信?
- sql-server - 将 nvarchar 转换为数字时出错。将逗号内的 nvarchar 转换为十进制时
- c# - HTML 开始表单显示空表单作为输出并且不支持内部的 html 助手
- python - Plotly Dash 中带有过滤器(下拉菜单)的侧边栏
- java - 无法使用 java org.kohsuke.github API 在现有 Gist 中创建文件
- nginx - Nginx 与在 443 上运行的应用程序发生冲突
- ios - 将我的 iOS 更新到 15.1 后,我无法连接到蓝牙
- javascript - 如何动态获取firestore子集合及其内容?