# Créer une requête de type foo%

**URL:** https://discuss.elastic.co/t/creer-une-requete-de-type-foo/254655
**Category:** Discussions en français
**Created:** [November 8, 2020, 8:28am UTC](https://discuss.elastic.co/t/creer-une-requete-de-type-foo/254655 "2020-11-08T08:28:29Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![ewkilian](https://avatars.discourse-cdn.com/v4/letter/e/ac8455/32.png) [@ewkilian](https://discuss.elastic.co/u/ewkilian)
#### Post date: [November 8, 2020, 8:28am UTC](https://discuss.elastic.co/t/creer-une-requete-de-type-foo/254655/1 "2020-11-08T08:28:29Z")

</div>

Bonjour,  
Je suis très débutant dans l'utilisation d'elastic search. Je l'utilise au niveau d'un système E-Commerce (thirty bees).  
Avec la configuration suivante :

```auto
{
  "bool": {
"must": [
  {
    "multi_match": {
      "query": ||QUERY||,
      "fields": ||FIELDS||,
      "type": "best_fields",
      "operator": "AND",
      "fuzziness": "auto"
    }
  }
]
  }
}

```

Sauf que lorsque je cherche "Domi" je n'ai qu'un résultat alors qu'il y a par exemple "DOMINION" qui affiche beaucoup de résultat  
Est-ce qu'il est possible d'effectuer une recherche de type Domi% ?  
J'ai essayé via la doc tellement de solution. Je ne trouve pas.  
En effet c'est dommage de n'afficher qu'un résultat alors qu'il y en a pleins d'autres.

Merci beaucoup pour votre aide  
A bientot

---

<div class="post-metadata">

### Author: ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)
#### Post date: [November 9, 2020, 10:33am UTC](https://discuss.elastic.co/t/creer-une-requete-de-type-foo/254655/2 "2020-11-09T10:33:00Z")

</div>

Bienvenue !

Voici ce que je ferais dans ton cas:

```auto
DELETE test 
PUT test
{
  "settings": {
    "analysis": {
      "analyzer": {
        "ngram_analyzer": {
          "tokenizer": "lowercase",
          "filter": ["ngram"]
        }
      },
      "filter": {
        "ngram": {
          "type": "edge_ngram",
          "min_gram": 2,
          "max_gram": 10,
          "token_chars": [
            "letter",
            "digit"
          ]
        }
      }
    }
  },
  "mappings": {
    "properties": {
      "foo": {
        "type": "text",
        "analyzer": "standard",
        "fields": {
          "ngram": {
            "type": "text",
            "analyzer": "ngram_analyzer",
            "search_analyzer": "simple"
          }
        }
      }
    }
  }
}
POST test/_analyze
{
  "analyzer": "ngram_analyzer",
  "text": ["DOMINION"]
}
POST test/_doc
{
  "foo": "DOMINION"
}
POST test/_doc
{
  "foo": "DOMI"
}
GET test/_search
{
  "query": {
    "multi_match": {
      "query": "domi",
      "fields": ["foo^3.0", "foo.ngram"]
    }
  }
}

```

Ca donne:

```auto
{
  "took" : 1,
  "timed_out" : false,
  "_shards" : {
    "total" : 1,
    "successful" : 1,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : {
      "value" : 2,
      "relation" : "eq"
    },
    "max_score" : 2.0794415,
    "hits" : [
      {
        "_index" : "test",
        "_type" : "_doc",
        "_id" : "8AGPrHUB7wlh68wAN_fY",
        "_score" : 2.0794415,
        "_source" : {
          "foo" : "DOMI"
        }
      },
      {
        "_index" : "test",
        "_type" : "_doc",
        "_id" : "7gGPrHUB7wlh68wAMff8",
        "_score" : 0.27101856,
        "_source" : {
          "foo" : "DOMINION"
        }
      }
    ]
  }
}

```

En mettant plus de poids sur le mots exacts que les versions partielles.

---

<div class="post-metadata">

### Author: ![ewkilian](https://avatars.discourse-cdn.com/v4/letter/e/ac8455/32.png) [@ewkilian](https://discuss.elastic.co/u/ewkilian)
#### Post date: [November 14, 2020, 10:45am UTC](https://discuss.elastic.co/t/creer-une-requete-de-type-foo/254655/3 "2020-11-14T10:45:14Z")

</div>

Bonjour,  
Pour commencer je m'excuse de ma réponse tardive, et en même temps je vous remercie d'avoir pris le temps de répondre à ma question.  
Je vais vous lire et essayer de comprendre, et de tester votre proposition  
Cordialement

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [December 12, 2020, 10:45am UTC](https://discuss.elastic.co/t/creer-une-requete-de-type-foo/254655/4 "2020-12-12T10:45:14Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
