Я использую ElasticSearch 7.0 с ES NodeJS . Я сопоставил поле с типом даты и формата. Я попытался отсортировать по дате desc, последний объект был помещен в индекс 3 вместо первого.
Mapping
client.indices.putMapping({
index: 'property',
body: {
properties: {
'created_at': {
'type': 'date',
"format":"YYYY-MM-DD'T'HH:mm:ss.000'Z'",
"ignore_malformed": true
}
}
}
})
Поиск сортировки
client.search({
index: 'property',
body: {
from : req.body.start,
size : req.body.length,
query : {
"bool": {
"must": []
}
},
sort: [
{ 'created_at': { 'order': 'desc' }}
]
}
})
Результат
[
{ "created_at": "2019-05-03T17:19:59.000Z" },
{ "created_at": "2019-05-03T17:06:26.000Z" },
{ "created_at": "2019-05-08T16:00:34.000Z" }
]
Ожидаемый результат
[
{ "created_at": "2019-05-08T16:00:34.000Z" }
{ "created_at": "2019-05-03T17:19:59.000Z" },
{ "created_at": "2019-05-03T17:06:26.000Z" }
]