J'essaie de construire une requête elasticsearch pour not
en utilisant bool
, puisque not
est obsolète. Par exemple. Faire correspondre tous les documents n'appartenant pas à [email protected]
.Requête de recherche élastique utilisant bool au lieu de
J'ai essayé ces utilisant ElasticSearch-dsl (suivant ce poste https://www.elastic.co/blog/lost-in-translation-boolean-operations-and-filters-in-the-bool-query):
{'query': {
'bool': {
'must_not': [{
'match': {
'author': '[email protected]'
}
}]
}
}}
Cela renvoie aucun résultat, bien que les documents autres que 'author': '[email protected]'
existent.
J'ai aussi essayé
{'query': {
'bool': {
'must_not': [{
'term': {
'author': '[email protected]'
}
}]
}
}}
Cela renvoie un mélange de documents où certains ont 'author': '[email protected]'
et d'autres non.
vous devriez essayer d'ajouter must_not au même niveau de moût. Comme: bool> must, must_not. D'un autre côté, le niveau de base de devrait signifier "ou". Avec cela ou, certains documents indésirables peuvent apparaître. – hkulekci
Vous pouvez essayer de créer des phrases sur votre recherche. Par exemple, je veux obtenir des documents qui ne sont pas des documents propres à l'utilisateur et qui sont privés. Alors, quelle est votre requête? Pour compléter nos phrases. – hkulekci