Tutorial de consultas de rango de elasticsearch

Tutorial de consultas de rango de elasticsearch
En ElasticSearch, podemos obtener los resultados de documentos que coincidan con un rango específico utilizando la consulta de rango.

A lo largo de esta guía, aprenderá a definir un parámetro de rango en su consulta de búsqueda utilizando expresiones booleanas como mayores que, menos y más.

Consulta de rango de elasticsearch: uso básico

Para especificar un rango específico en una consulta de búsqueda, podemos usar el parámetro de rango seguido del campo y las condiciones para verificar.

Tome la consulta a continuación que devuelve los documentos donde el campo AVGICKETPRICE es mayor de 600 y menos de 800

Get /kibana_sample_data_flights /_search

"consulta":
"rango":
"AvgticketPrice":
"GTE": 600,
"LTE": 800



A continuación se muestra los resultados de devolución de ejemplo:

Comprender la consulta

En el ejemplo anterior, establecemos el rango en la consulta. La palabra clave de rango requiere el parámetro de campo, que define el campo para buscar.

Luego procedemos a definir el parámetro para el campo. Estas son condiciones booleanas como:

  1. GT - Mayor que
  2. GTE: mayor o igual a
  3. LT - Menos de
  4. lte - menos o igual a

Consulta de un rango de tiempo

Si el campo que desea buscar es de la fecha de tipo, puede usar los condicionales anteriores seguidos de la fecha matemática definida en el recurso a continuación:

Elasticsearch fecha de matemáticas

Considere el siguiente valor que utiliza el parámetro Time_zone para convertir el tiempo en valor UTC y busca un rango.

Get /kibana_sample_data_flights /_search

"consulta":
"rango":
"Marca de tiempo":
"Time_zone": "+03: 00",
"GTE": "2021-10-14T05: 22: 14",
"LTE": "Ahora"



La consulta anterior debe devolver los documentos donde la marca de tiempo es mayor que 2021-10-14 a las 05:22:14.

Aquí hay resultados de ejemplo:

NOTA: Time_zone no afecta el parámetro ahora.

Mas grande que

No tiene que combinar los condicionales como mayores y menos que; Puede usar un rango individual, como se muestra en el ejemplo a continuación:

Get /kibana_sample_data_flights /_search

"consulta":
"rango":
"Distancemiles":
"GTE": 10000



El ejemplo anterior devuelve los documentos donde los distancemiles son superiores a 10000.

La respuesta está a continuación:

Booleano

Para verificar un rango donde el tipo de campo sea un valor booleano, puede usar LTE o GTE. Por ejemplo, para obtener los documentos para vuelos cancelados, podemos ejecutar una solicitud como:

Get /kibana_sample_data_flights /_search

"consulta":
"rango":
"Cancelado":
"Gte": verdadero



En el ejemplo anterior, pasamos el rango para verificar como un verdadero booleano.

Los resultados son como se muestra:

Clausura

En esta guía, aprendió cómo usar la consulta de rango en Elasticsearch para filtrar para obtener resultados que coincidan con un rango específico.