范围查询 #
您可以使用 range
范围查询搜索字段中的值范围。
要搜索 line_id
值为 >= 10 和 <= 20 的文档,请使用以下请求:
GET shakespeare/_search
{
"query": {
"range": {
"line_id": {
"gte": 10,
"lte": 20
}
}
}
}
运算符 #
范围查询中的字段参数接受以下可选运算符参数:
gte
:大于或等于gt
:大于lte
:小于或等于lt
:小于
日期字段 #
您可以对包含日期的字段使用范围查询。例如,假设您有一个products
索引,并且想要查找 2019 年添加的所有产品:
GET products/_search
{
"query": {
"range": {
"created": {
"gte": "2019/01/01",
"lte": "2019/12/31"
}
}
}
}
日期格式 #
要在查询中使用字段映射格式以外的日期格式,请在 format
字段中指定它。
例如,如果products
索引将created
字段映射为 strict_date_optional_time
,则可以为查询日期指定不同的格式,如下所示:
GET /products/_search
{
"query": {
"range": {
"created": {
"gte": "01/01/2022",
"lte": "31/12/2022",
"format":"dd/MM/yyyy"
}
}
}
}