es根據某個字段排序及問題處理


因為業務需求,需要對某個字段進行排序展示,所以自己就用了以下方法

body = {
            "query": {
                "bool": {
                    "must": [
                        {
                            "term": {
                                "group": group_name
                            }
                        }
                    ]
                }
            },
            "from": (page_num - 1) * 30,  # 從什么位置開始
            "size": 30,  # 返回條數
            "collapse": {
                "field": filed_name
            },
            "sort": [{"需要排序的字段": {'order': "升序asc降序asc"}}]
}

但是這種會出現一個問題,就是如果你排序的字段內容是字符串的話,將混亂,不起作用,所以我做了一下處理

"pv": {
  "type": "integer",  # 搜索指數排序
  "index": "true"  # 不建索引
},
"pvCrc": {
  "type": "float",  # 搜索漲幅排序
  "index": "true"  # 不建索引
}      

就是你在創建索引的時候需要將這個字段的type根據情型定義成以上兩種形式


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM