【发布时间】:2020-07-31 04:25:09
【问题描述】:
我正在尝试执行 X AND (y OR z) 的查询 我需要获取代理是上市代理或销售代理的所有已售房产。
只有 bool 我必须得到 9324 个结果。当我添加 bool should 时,我得到相同的结果集 9324。ID 为 140699 的代理应该只有大约 100 个结果。我也尝试过没有成功的布尔过滤器。当用过滤器替换 should 时,结果就像另一个 bool must 一样,我只得到代理是上市代理和销售代理的结果
GET /property/_search
{
"query": {
"bool": {
"must": [
{
"term": {
"statusCatID": {
"value": "Sold"
}
}
},
{
"range": {
"closingDate": {
"gte": "now-3M"
}
}
}
],
"should": [
{
"term": {
"listAgent1": {
"value": 140699
}
}
},
{
"term": {
"sellingAgent1": {
"value": 140699
}
}
}
]
}
},
"size": 300
}
【问题讨论】:
标签: elasticsearch