python - 如何在弹性搜索 python 中组合这两个查询?
问题描述
我有两个要合并的查询
第一个返回“analysis.data_counts”值大于 0 的结果。
{
"query": {
"range" : {
"analysis.data_counts" : {
"gte" : 1,
}
}
}
}
第二个查看它是否具有某个字段,并检查另一个字段 bool 值,如果它具有该值,则在查询中将其提升得更高,因此它们首先出现
"query": {
"bool": {
"must": {
"exists": {
"field": "data_types"
}
},
"should": {
"term": {
"reviewed": False
},
}
}
}
})
所以我需要将它们联系在一起,这样我才能得到“analysis.data_counts”> = 1的结果,字段类型为“data_types”并使“reviewed”== False出现在True之前
解决方案
你可以这样做:
{
"query": {
"bool": {
"must": [
{
"exists": {
"field": "data_types"
}
},
{
"range" : {
"analysis.data_counts" : {
"gte" : 1,
}
}
}
],
"should": {
"term": {
"reviewed": False
}
}
}
}
}
推荐阅读
- ios - SwiftUI 使用 GeometryReader 时覆盖层的错误垂直对齐
- hl7-fhir - fhir json中的自定义键值对
- flutter - 如何从 Firestore 中检索数据 - Flutter
- reactjs - 使用 React Hooks 重置输入元素的值
- django - 模板中的 Django 动态对象过滤问题
- java - 变量未初始化时会发生什么?
- reactjs - 如何使用 useContext 从 API 传递数据?
- java - CSV 文件无法更新
- kubernetes - DigitalOcean NFS 与 do-block 存储
- c# - 如何使用winforms从两侧切割按钮的宽度?