Уважаемые,
У меня проблема с написанием правильного сложного запроса. Я пытаюсь написать один запрос, который будет делать то же самое, что и другие четыре запроса, которые должны: подсчитывать документы с кодами 1 ?? или 2 ?? в поле ci.rc и подсчитать документы с кодами 9 ?? в поле ci.rc и подсчитать документы с кодом 0 ?? в поле ci.r c и иметь коды 1210 или 1230 в поле ci.mti и подсчитать документы с кодами 1400 или 1420 в поле ci.mti
Не могли бы вы посоветовать мне, как написать один запрос, который будет сделайте то же самое, какие четыре отдельных запроса, пожалуйста? Любой совет? Пожалуйста.
Мой скелет одного запроса:
GET /log-2020.07.08/_search?size=0
{
"query": {
"bool": {
"should": [
{
"query_string": {
"default_field": "ci.rc",
"query": "(1??) or (2??)"
}
},
{
"query_string": {
"default_field": "ci.rc",
"query": "(9??)"
}
},
{
"bool": {
"must": [
{
"regexp": {
"ci.rc": "0[0-9]{2}"
}
},
{
"regexp": {
"ci.mti": "[0-9]{2}[3|5|7|9][0-9]{1}"
}
}
]
}
}
]
}
},
"aggs": {
"rc": {
"terms": {"field": "ci.rc.keyword","size": 10}
}
}
}
Отсутствует условие даты и последний отдельный запрос: подсчитайте количество документов, которые имеют коды 1400 или 1420 в поле ci.mti
С уважением, Дэн