#elasticsearch
#elasticsearch
Вопрос:
У меня есть следующее тело
body = {
"size": 100,
"query": {
"bool": {
"filter": [
{
"term": {
"some_id_1": some_id_1
}
},
{
"term": {
"some_id_2": some_id_2
}
},
{
"term": {
"some_id_2": some_id_2
}
},
{
"terms": {
"some_strings": "a,b,c"
}
},
{
"term": {
"created_at": dt.now().strftime("%Y-%m-%d")
}
}
]
}
}
}
Это приведет к поиску всех записей по условию в term для dt.now().
Вопрос: Как я могу выполнить поиск по всем документам за текущий месяц?
Буду благодарен за помощь.
Ответ №1:
Вместо этого вы можете использовать range
запрос с некоторой математикой даты, например:
{
"range": {
"created_at": {
"gte": "now/M"
}
}
}
Будут возвращены все документы, created_at
поле которых относится к первому числу этого месяца или позже.