【发布时间】:2022-08-04 18:49:51
【问题描述】:
我没有在弹性搜索中进行过试验,我必须为字段“data.elements.id_element”添加一个范围过滤器到下一个查询:
{
\"aggs\": {
\"2\": {
\"date_histogram\": {
\"field\": \"@timestamp\",
\"calendar_interval\": \"1d\",
\"min_doc_count\": 1
},
\"aggs\": {
\"elementId\": {
\"terms\": {
\"field\": \"data.elements.id_element\",
\"order\": {
\"_count\": \"desc\"
},
\"size\": 1000
},
\"aggs\": {
\"Device\": {
\"filters\": {
},
\"aggs\": {
}
}
}
}
}
}
},
\"size\": 0,
\"docvalue_fields\": [
{
\"field\": \"@timestamp\",
\"format\": \"date_time\"
}
],
\"query\": {
\"bool\": {
\"filter\": [
{
\"range\": {
\"@timestamp\": {
\"gte\": \"startDate\",
\"lte\": \"endDate\",
\"format\": \"strict_date_optional_time\"
}
}
}
]
}
}
}
我试图像这样添加到范围部分,但它被忽略了:
{
\"aggs\": {
\"2\": {
\"date_histogram\": {
\"field\": \"@timestamp\",
\"calendar_interval\": \"1d\",
\"min_doc_count\": 1
},
\"aggs\": {
\"elementId\": {
\"terms\": {
\"field\": \"data.elements.id_element\",
\"order\": {
\"_count\": \"desc\"
},
\"size\": 1000
},
\"aggs\": {
\"Device\": {
\"filters\": {
},
\"aggs\": {
}
}
}
}
}
}
},
\"size\": 0,
\"docvalue_fields\": [
{
\"field\": \"@timestamp\",
\"format\": \"date_time\"
}
],
\"query\": {
\"bool\": {
\"filter\": [
{
\"range\": {
\"@timestamp\": {
\"gte\": \"startDate\",
\"lte\": \"endDate\",
\"format\": \"strict_date_optional_time\"
}
}
},
{
\"range\": {
\"data.elements.id_element\": {
\"gte\": 1,
\"lte\": 1001
}
}
}
]
}
}
}
我也试过这个:
{
\"aggs\": {
\"2\": {
\"date_histogram\": {
\"field\": \"@timestamp\",
\"calendar_interval\": \"1d\",
\"min_doc_count\": 1
},
\"aggs\": {
\"elementId\": {
\"terms\": {
\"field\": \"data.elements.id_element\",
\"order\": {
\"_count\": \"desc\"
},
\"size\": 1000
},
\"aggs\": {
\"Device\": {
\"filters\": {
},
\"aggs\": {
}
}
}
}
}
}
},
\"size\": 0,
\"docvalue_fields\": [
{
\"field\": \"@timestamp\",
\"format\": \"date_time\"
}
],
\"query\": {
\"bool\": {
\"must\": [
{
\"query_string\": {
\"query\": \"data.elements.id_element:[1 TO 1001]\",
\"analyze_wildcard\": true,
}
}
],
\"filter\": [
{
\"range\": {
\"@timestamp\": {
\"gte\": \"startDate\",
\"lte\": \"endDate\",
\"format\": \"strict_date_optional_time\"
}
}
}
]
}
}
}
同样的结果,aleatoire 元素 id 并且不尊重范围过滤器/条件。 请有任何想法。
谢谢。
标签: elasticsearch