Query_string on nested object

Bonjour !

J' ai un soucis dans ma recherche sur des nested objects :smiley:

Field :

 
"listSecteurs":
{
    "type" : "nested",
    "include_in_parent": true,
    "properties" : 
    {
        "secteurName" : {"type": "string", "analyzer": "analyzerFr"},
        "secteurExp" : {"type": "integer"}
    }
},

Les valeurs :

 "listSecteurs": [
    {
      "secteurName": "Ferroviaire",
      "secteurExp": "4"
    },
    {
      "secteurName": "qwr",
      "secteurExp": "3"
    }
],

La recherche (via l' api php) :

 
 $params = [
     'index' => 'index-fr',
     'type' => 'candidat',
     'body' => [
         'size' => 20,
         'query' => [
             'query_string' => [
                 'analyze_wildcard' => true,
                 'default_operator' => 'AND',
                 'query' => [
                     'fields' => [ 'listSecteurs'  ],
                     'query' => qwr
                 ]
             ]
         ]
     ]
 ];
 

Et la recherche ne le trouve pas :smile:

Si tu utilises l'outil pour formater plutôt que l'outil pour citer, ton indentation sera correcte.
Si tu peux éditer c'est mieux.

Essaye de changer le champ dans lequel tu cherches par secteurName pour voir.

Trouvé !

"query": {
    "nested": {
      "path" : ["listSecteurs", "listCompetences"],
      "query": {
        "query_string": {
          "fields": ["listSecteurs.secteurName", "listCompetences.competenceName"],
          "query": "Industrie pharmaceutique"
        }
      }
    }
  }

Le soucis, c'est que j'ai des champs nested object, mais j'ai aussi des champs simple.
Et je ne vois pas comment combiner la recherche dans des nested objetcts et les champs simple (avec une query string)

Tu ne peux pas avec une query string query.