Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 20947|Respuesta: 1

Las consultas compuestas de ElasticSearch deben, deben must_not usar

[Copiar enlace]
Publicado en 28/12/2018 12:01:09 | | |
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:







Anterior:Adquirido por China Accounting Online School el 18 de diciembre (Campo de Formación en Aduanas de Práctica Contable Nivel 6)
Próximo:La regla regular C# toma el valor de la etiqueta A href en HTML
Publicado en 22/11/2022 14:25:30 |
Aprende es, gracias casero
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com