Hello,
I have a field where I store an array of strings (categories). When querying the categories I only receive a result when I'm searching for the first element of the categories' array (in my example below: hello).
When searching for any other element than the first one I won't receive any results.
I have a field named categories that is mapped like this:
PUT /products/_mapping/_doc
...
"categories": {
      "type": "text"
    },
...
My document has an array of categories:
PUT /products/_doc/42
{
    "_index": "products",
    "_type": "_doc",
    "_id": "42",
    "_version": 1,
    "found": true,
    "_source": {
        ...
        "categories": [
            "hello",
            "world"
        ],
        ...
    }
}
This is the search query:
POST /products/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "categories": {
              "query": "hello",
              "boost": 100
            }
          }
        }
      ]
    }
  }
}
one result (product with
id 42)
This one produces no results:
POST /products/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "categories": {
              "query": "world",
              "boost": 100
            }
          }
        }
      ]
    }
  }
}
no result
I'm on Elastic Search 6.3.
Any ideas?
Thanks,
Christian