0
我需要对弹性搜索中的字段进行排序,并将更高优先级的数字设置为以下符号“_”。我该如何改变弹性搜索对字段进行排序的方式?
比方说,我有以下几点:
"1"
"2"
"_3"
我想应该排序如下排序:
"_3"
"1"
"2"
我怎样才能做到这一点?
在此先感谢
我需要对弹性搜索中的字段进行排序,并将更高优先级的数字设置为以下符号“_”。我该如何改变弹性搜索对字段进行排序的方式?
比方说,我有以下几点:
"1"
"2"
"_3"
我想应该排序如下排序:
"_3"
"1"
"2"
我怎样才能做到这一点?
在此先感谢
我建议像下面这样,如果你知道一些数字不可能被在文件中添加有效的:
{
"sort": {
"_script": {
"script": "if (doc['messageText'].value.startsWith('_')) return doc['messageText'].value.substring(1).toInteger()-1000000; return doc['messageText'].value.toInteger()",
"type": "number",
"order": "asc"
}
}
}
是该领域中'字符串“正确? –
你想如何对'_3','_2','_5'进行排序? –
@AndreiStefan在这种情况下,首先是“_”,然后是数字。这将是:_2,_3,_5 – Miguelme