我经常搜索,但我的情况没有得到任何结果。
我有弹性搜索的帖子。我想获得帖子
我用过这个但是没用。它会检索创建的所有帖子> 1524722310000并且不检查 author_id 和 post_id !
query: {
bool: {
should: [
{match: {"author_id" : 2}},
{match: {"post_id" : 2}}
],
filter: [
{range: {"created": {gte : startTime , lte:targetTime}}},
]
}
}
答案 0 :(得分:2)
你几乎就在那里,你只缺少一件事,即指定至少有一个should
条款应该匹配,你可以这样做:
query: {
bool: {
minimum_should_match: 1, <-- add this line
should: [
{match: {"author_id" : 2}},
{match: {"post_id" : 2}}
],
filter: [
{range: {"created": {gte : startTime , lte:targetTime}}},
]
}
}
答案 1 :(得分:2)
Try this,
query: {
bool: {
must: [
{match: {"author_id" : 2}},
{match: {"post_id" : 2}},
{range: {"created": {gte : startTime , lte:targetTime}}}
]
}
}