【发布时间】:2019-08-30 19:49:21
【问题描述】:
我有一个场景,在弹性搜索查询的 should 子句中,我需要一个 must 子句。
例如,我需要以这样一种方式过滤数据,即如果数据应该仅用于调度区域 ID 为 10 且承运人 ID 仅为 1、2、3 的订单,但还应该为所有具有驱动程序 ID 的订单提取数据为 1,2,3。
在我当前的场景中,它为所有运营商 ID 提取数据为 1、2、3 和调度区域 ID 10 以及不是 10 的调度区域。即,如果运营商 ID 1 的调度区域 ID 为 9,则该数据也是未来。
如何在 should 查询中添加 must 子句。
{
"from": 0,
"size": 10000,
"query": {
"bool": {
"must": [
{
"bool": {
"should": [
[
{
"terms": {
"dispatchAreaId": [
10
]
}
},
{
"terms": {
"carrierId": [
1,2,3
]
}
},
{
"terms": {
"driverIds": [
1,2,3
]
}
}
]
]
}
}
]
}
}
}
【问题讨论】:
标签: amazon-web-services elasticsearch aws-elasticsearch