Elasticsearch partido elemento de la matriz

0

Pregunta

Teniendo en cuenta estos datos:

[
  {
    "tags": [
      "food"
    ]
  },
  {
    "tags": [
      "food features"
    ]
  }
]

Y el índice de asignación de

{
  "mappings": {
    "properties": {
      "tags": {
        "type": "text",
        "fields": {
          "keyword": {
            "type": "keyword",
            "ignore_above": 256
          }
        }
      }
    }
  }
}

¿Cómo puedo crear una consulta que devuelve etiquetas coincidentes [comida] y [alimentos características] cuando busqué [comida] etiqueta, pero cuando la búsqueda de alimento de las características de la etiqueta, sólo [de los alimentos características] etiqueta se devuelve? Gracias.

elasticsearch
2021-11-22 08:49:00
1

Mejor respuesta

1

Un prefix consulta sobre la tags.keyword campo podría hacer el trabajo:

{
  "query": {
    "prefix": {
      "tags.keyword": "food"
    }
  }
}
2021-11-22 09:12:26

Gracias. Pero en el caso del índice con un documento con las etiquetas: [características de los alimentos A], esta solución no funciona.
Anh Ho Phi Duc

No estoy seguro de lo que quieres decir. Puedes actualizar tu pregunta con una muestra de documentos y la consulta que creo que no funciona?
Val

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................