Comment utiliser minimum_should_match de recherche dans plusieurs champs?
Je suis en train de filtrer mes elasticsearch du résultat, il doit retourner les résultats qui sont à 80% compatible avec le texte de la recherche.
Quand je fais cela pour une seule clé, la minimum_should_match
fonctionne parfaitement:
{
"size":30,
"from":930,
"query":{
"filtered":{
"query":{
"query_string":{
"default_field":"campo1",
"query":"portugues",
"minimum_should_match":"80%"
}
}
}
}
}
Quand je fais une recherche en utilisant plus d'une touche, le minimum_should_match
ne fonctionne pas bien, retourner les résultats avec 70% compatibilité:
{
"size":30,
"from":123420,
"query":{
"filtered":{
"query":{
"query_string":{
"default_operator":"or",
"query":"portugues",
"fields":[
"campo1",
"campo2^5",
"campo3"
],
"minimum_should_match":"80%"
}
}
}
}
}
Aussi loin que je peux penser, j'ai besoin de minimum_should_match
par la clé, mais je ne sais pas comment faire la même chose.
Si quelqu'un peut m'aider à le faire, sera grande.
OriginalL'auteur Alessandro Gomes | 2014-03-27
Vous devez vous connecter pour publier un commentaire.
J'avais besoin d'utiliser
bool
etmulti_match
, c'est bien:OriginalL'auteur Alessandro Gomes