使用嵌套对象类型在Elastic Search中排序

时间:2018-08-03 06:56:17

标签: python-3.x elasticsearch

我正在尝试在python程序中使用弹性搜索获取数据。目前,我正在从弹性搜索请求中获取以下数据。我希望对rank:type上的数据进行排序。例如,我想按raw_freq或按分数排序数据。 查询应该是什么样? 我相信它将使用嵌套查询。帮助将不胜感激。

{
    "data": [
        {
            "customer_id": 108,
            "id": "Qrkz-2QBigkG_fmtME8z",
            "rank": [
                {
                    "type": "raw_freq",
                    "value": 2
                },
                {
                    "type": "score",
                    "value": 3
                },
                {
                    "type": "pmiii",
                    "value": 1.584962
                }
            ],
            "status": "pending",
            "value": "testingFreq2"
        },

                ],

}

1 个答案:

答案 0 :(得分:0)

以下是有关如何对数据进行排序的简单示例:

"query": {
  "term": {"status": "pending"}
},
"sort": [
  {"rank.type.keyword": {"order" : "desc"}}
]