我怎样才能实现
where NOT IN
在弹性搜索6.x.
我的映射包含一个字段'user_id'
我只想在没有特定用户的情况下获取那些文档。
答案 0 :(得分:1)
我认为答案在于BooleanQuery。此查询类型允许您创建用于搜索数据的布尔运算字符串。在这种情况下,您可能需要查看must_not
子句。
更具体地说,您想要做的是创建一个must_not
子句,其中userIds处于terms
状态。 E.G:
{
"query" : {
"bool" : {
"must_not" : {
"terms" : {
"user_id" : [<user_id_1>, <other_user_ids..>]
}
}
}
}
}
答案 1 :(得分:0)
将下面的值占位符替换为您不想要的任何值。
POST _search
{
"query": {
"bool": {
"must_not": [
{
"term": {
"user_id": {
"value": "{ID_YOU_DONT_WANT}"
}
}
}
]
}
}
}