Consulta conjunta BOOL: Debe, debe, must_not
Si queremos pedir algo similar a "contenido con BMW, pero no en etiqueta", tenemos que usar bool federated consulty.
La consulta conjunta utilizará tres palabras clave: debe, debería must_not.
Estos tres pueden entenderse así
must: El documento debe cumplir exactamente con las condiciones
should: debe tener más de una condición, y si al menos una se cumple, este documento cumplirá si
must_not:El documento no debe cumplir con los criterios
Introducción a la página web oficial:https://www.elastic.co/guide/cn/ ... bining-filters.html
Consulta DSL
match_all Consulta
Todos los documentos pueden ser consultados, y es la sentencia predeterminada sin condiciones de consulta.
Esta consulta se utiliza a menudo para fusionar filtros. Por ejemplo, necesitas recuperar todos los buzones y toda la relevancia de los documentos es la misma, así que la _score que obtienes es 1.
Consulta de coincidencia
Una consulta de coincidencia es una consulta estándar que básicamente se utiliza tanto si necesitas una consulta en texto completo como una consulta exacta.
Si usas corresponder para consultar un campo de texto completo, usará el analizador para analizar los caracteres de consulta antes de la consulta real:
Si especificas un valor exacto en la sección de coincidencia, buscará tu valor dado cuando encuentre una cadena de número, fecha, booleano o not_analyzed:
Consejo: Al hacer una búsqueda de coincidencia exacta, es mejor usar sentencias de filtro porque las sentencias filtro almacenan los datos en caché.
Una consulta de coincidencia solo puede buscar un valor exacto que especifique un campo exacto, y solo tienes que especificar el nombre correcto del campo para evitar errores de sintaxis.
multi_match Consulta
multi_match consulta te permite buscar en varios campos a la vez basándote en una consulta de coincidencia, y buscar uno en varios campos al mismo tiempo:
Consulta BOOL
Las consultas bool son similares al filtrado bool y se utilizan para fusionar múltiples cláusulas de consulta. La diferencia es que el filtro bool puede indicar directamente si la coincidencia es exitosa, mientras que la consulta bool calcula la _score (puntuación de correlación) de cada cláusula de consulta.
must:: 查询指定文档一定要被包含。 must_not:: No se deben incluir documentos especificados para consultas.
should:: 查询指定文档,有则可以为文档相关性加分。
La siguiente consulta mostrará que el campo de título contiene "cómo ganar millones" y que el campo "etiqueta" no está marcado como spam. Si están etiquetados como "con estrellas" o tienen una fecha de lanzamiento anterior a 2014, entonces estos documentos coincidentes estarán a un nivel superior al de sitios similares:
Consejo: Si no hay cláusula de obligación bajo la consulta bool, debería haber al menos una cláusula de debería. Pero si existe una cláusula must, entonces la consulta también puede hacerse sin la cláusula need.
Consulta de comodines
Utiliza consultas comodines estándar de shell
La siguiente consulta coincide con documentos que contienen W1F 7HW y W2F 8HW:
Por ejemplo, la siguiente consulta para el nombre del host coincide con el siguiente comodín de la shell:
Consulta regexp
Supongamos que solo quieres coincidir con códigos postales que empiecen por W seguido de números. Usar consultas regulares te permite escribir patrones más complejos:
Esta expresión regular especifica que la entrada debe comenzar con W, seguida de un número del 0 al 9, seguido de uno o más caracteres más.
El siguiente ejemplo es todo el inicio regular con wxopen
Consulta con prefijo
¿Con qué carácter empieza? Puedes usar el prefijo de forma más sencilla, como en el ejemplo de abajo:
Coincidencia de frases
Cuando necesitas encontrar unas pocas palabras cerca, usas match_phrase consulta:
Similar a las consultas de coincidencia, match_phrase consulta primero analiza la cadena de consulta para producir una lista de términos. Buscará todas las entradas, Sin embargo, solo se conservan los documentos que contienen todos los términos de búsqueda, y las posiciones de los términos deben ser adyacentes. Una consulta para la expresión Quick Fox no coincidirá Cualquiera de nuestras documentaciones, ya que ninguna documentación contiene entradas rápidas y de casillas adyacentes. match_phrase consulta también puede escribirse como una consulta de coincidencia de frase tipo:
|