termla requête correspond à un seul terme tel quel: la valeur n'est pas analysée . Ainsi, il n'est pas nécessaire de le mettre en minuscules en fonction de ce que vous avez indexé.
Si vous avez fourni Bennettau moment de l'indexation et que la valeur n'est pas analysée, la requête suivante ne retournera rien:
{
  "query": {
    "term" : { "user" : "bennett" }
  }
}
match_phrase query analysera l'entrée si des analyseurs sont définis pour le champ interrogé et trouvera les documents correspondant aux critères suivants:
- tous les termes doivent apparaître dans le champ
- ils doivent avoir le même ordre que la valeur d'entrée
Par exemple, si vous indexez les documents suivants (en utilisant l' standardanalyseur pour le champ foo):
{ "foo":"I just said hello world" }
{ "foo":"Hello world" }
{ "foo":"World Hello" }
Cette match_phraserequête ne renverra que les premier et deuxième documents:
{
  "query": {
    "match_phrase": {
      "foo": "Hello World"
    }
  }
}
query_stringrecherche par requête, par défaut, sur un champ _all qui contient le texte de plusieurs champs de texte à la fois. En plus de cela, il est analysé et prend en charge certains opérateurs (ET / OU ...), les caractères génériques, etc. (voir la syntaxe associée ).
Au fur et à mesure des match_phraserequêtes, l'entrée est analysée en fonction de l'analyseur défini sur le champ interrogé.
Contrairement à match_phrase, les termes obtenus après analyse ne doivent pas nécessairement être dans le même ordre, sauf si l'utilisateur a utilisé des guillemets autour de l'entrée.
Par exemple, en utilisant les mêmes documents qu'auparavant, cette requête renverra tous les documents:
{
  "query": {
    "query_string": {
      "query": "hello World"
    }
  }
}
Mais cette requête renverra les 2 mêmes documents que la match_phraserequête:
{
  "query": {
    "query_string": {
      "query": "\"Hello World\""
    }
  }
}
Il y a beaucoup plus à dire sur les différentes options pour ces requêtes, veuillez consulter la documentation associée:
J'espère que cela est assez clair et que cela aidera.