我需要根据多个字段对索引数据进行排序。
Exa:我的索引数据如下:
{ " id":3, " displayId":0, " createdAt":1490207400001, " priority":" NORMAL", }
{ " id":3, " displayId":0, " createdAt":1490207400002, "优先":" HIGH", }
像这样会有多个记录具有不同的"优先级"和" createAt"字段。
步骤1:首先,我需要按优先级对记录进行排序。
步骤2:然后我想在第1步中按字段排序记录" createdAt"
在elasticsearch中执行此操作的方法是什么?
先谢谢!!
答案 0 :(得分:2)
你这样做:
GET /my_index/my_type/_search
{
"sort" : [
{ "priority" : {"order" : "asc"}},
{ "createAt" : "desc" }
],
"query" : {
...
}}
这假定您的优先级字段值已正确排序,否则您必须重命名它们或使用函数进行排序。