Elasticsearch过滤结果按ID排除

我需要返回不包含具有特定ID的文档的结果。Elasticsearch允许我们指定允许使用哪些ID,但是我看不到任何禁止某些ID的方法。在我的情况下,我不想返回用户已经看到的内容,因此每个用户的列表都不同。

回答:

您可以通过添加一个bool/must_not过滤器来实现此目的,该过滤器包含一个ids过滤器,该过滤器带有您不想显示的ID数组,如下所示:

{

"query": {

"bool": {

"must": [

... <--- your other filters go here

],

"must_not": [

{

"ids": {

"values": [

"id1", "id2" <--- add all the ids you DON'T want in here

]

}

}

]

}

}

}

以上是 Elasticsearch过滤结果按ID排除 的全部内容, 来源链接: utcz.com/qa/430211.html

回到顶部