#elasticsearch
#elasticsearch
Вопрос:
Я хочу отсортировать свой список по истинному значению в поле под названием trusted.
Я обнаружил, что опция сортировки не поддерживает логическую сортировку.
Как я могу этого добиться?
Комментарии:
1. Вам следует попробовать фильтр терминов. Прочитайте документы: elastic.co/guide/en/elasticsearch/reference/current /…
Ответ №1:
Если я правильно понял вашу проблему, я попытался выполнить локальный тест на ES версии 7.8, и я ввел следующие данные в свой индекс:
«содержимое»: «Это тест», «доверенный»: true
«содержимое»: «Это новый тест», «доверенный»: верно
«содержимое»: «Это не тест», «доверенный»: false
Вот отображение индекса:
"mappings" : {
"properties" : {
"content" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"trusted" : {
"type" : "boolean"
}
}
}
Вот запрос, когда "order" : "desc"
:
{
"sort": [
{
"trusted": {
"order": "desc"
}
}
]
}
Ответ:
"hits" : [
{
"_index" : "boolean-sorting",
"_type" : "_doc",
"_id" : "B-YleHQBsTCl1BZvrFdA",
"_score" : null,
"_source" : {
"content" : "This is a test",
"trusted" : true
},
"sort" : [
1
]
},
{
"_index" : "boolean-sorting",
"_type" : "_doc",
"_id" : "CeYleHQBsTCl1BZvtFdJ",
"_score" : null,
"_source" : {
"content" : "This is a new test",
"trusted" : true
},
"sort" : [
1
]
},
{
"_index" : "boolean-sorting",
"_type" : "_doc",
"_id" : "DOYleHQBsTCl1BZvvVfl",
"_score" : null,
"_source" : {
"content" : "This is not a test",
"trusted" : false
},
"sort" : [
0
]
}
]
Когда "order":"asc"
ответ:
"hits" : [
{
"_index" : "boolean-sorting",
"_type" : "_doc",
"_id" : "DOYleHQBsTCl1BZvvVfl",
"_score" : null,
"_source" : {
"content" : "This is not a test",
"trusted" : false
},
"sort" : [
0
]
},
{
"_index" : "boolean-sorting",
"_type" : "_doc",
"_id" : "B-YleHQBsTCl1BZvrFdA",
"_score" : null,
"_source" : {
"content" : "This is a test",
"trusted" : true
},
"sort" : [
1
]
},
{
"_index" : "boolean-sorting",
"_type" : "_doc",
"_id" : "CeYleHQBsTCl1BZvtFdJ",
"_score" : null,
"_source" : {
"content" : "This is a new test",
"trusted" : true
},
"sort" : [
1
]
}
]
Ссылки:
https://www.elastic.co/guide/en/elasticsearch/reference/current/sort-search-results.html
Пожалуйста, дайте мне знать, если я неправильно ответил, я буду рад помочь.
Комментарии:
1. Я могу подтвердить, что это все еще проблема с ES 7.9. Кто-нибудь знает исправление для этого?