I'm trying to search through this type of documents :
{
"id_stage": "4598",
"n_stage": "1331400117S",
"intitule_stage": "Comment travailler avec le délire dans la psychose ? - Niveau II -",
"objectifs": ">Poursuivre et approfondir les enseignements théoriques du stage Niveau I sur le même thème.\r\n>Savoir mettre en pratique ces connaissances par l'analyse \"active\" du discours du patient.",
"contenu": "*Rappel de la théorie découverte lors du Niveau I : travail à partir de cas de schizophrénie, de paranoïa et de névrose afin d'affiner la notion de clinique différentielle.\r\n*Le psychotique et sa famille :\r\n-Notion de transmission intra-familiale.\r\n-Les relations parents/enfants dans la psychose.\r\n*Les structures maniaques et mélancoliques, spécificité du fonctionnement.\r\n*Absence de sentiment de culpabilité et confusion diagnostique entre psychose et perversion. Essai d'approche différentielle.\r\n*Les psychoses blanches (sans délire apparent).\r\n",
"pre_requis": "",
"mmp": "",
"sessions": [
{
"id_session": "5332",
"debut": "2017-12-04",
"date_fin": "2017-12-08",
"ville": "LA ROCHELLE"
}
],
"mots_cles": [
"DELIRE",
"PSYCHOSE"
]
}
and here is my query :
{
"from": 0,
"size": 100,
"min_score": 4.5,
"query": {
"bool": {
"must":
[
{
"multi_match": {
"fields":
[
"sessions^2",
"contenu^1",
"objectifs^1",
"intitule_stage^3",
"mmp^1",
"mots_cles^3"
],
"query": "' . $request . '",
"fuzziness" : "AUTO",
"prefix_length" : 2,
"type" : "best_fields"
}
},
{
"query_string": {
"fields":
[
"n_stage"
],
"query": "*' . $filter_year . 'S"
}
}
]
}
}
}
The problem is that the search : "handicap" returns 66 results and the result "handicap La Rochelle" returns 100 results(the limit) and it should return less besause "La Rochelle" can only be present in the session field of the document
Maybe should I use something else than multi_match ?
Thanks for your help.