ElasticSearch置顶方案

最近系统有个需求,希望工作流的审批人被催办后就要置顶在最前面,

工作流列表我是用es的,一开始想用pinned实现,但用pinned的话,每页都会置顶在前面,我的需求只是想让他优先排在前面,翻页后正常显示

后面找到这个,通过把匹配到数据的分数提高,然后用sort进行排序,就能实现我的需求了

复制代码
GET wf_workflow-latest/_search
{
  
  "query": {
    "bool": {
      "must": [
        {
          "boosting": {
      //这是数据过滤条件,影响数据结果
"positive": { "match_all": {} },
        //这是相关性数据的过滤条件,不会影响数据结果,对得分有影响
"negative": { "bool": { "must": [ { "nested": { "path": "current_task.reminders", "query": { "term": { "current_task.reminders.reminder_user_id": { "value": 1 } } } } } ] } },
        //将匹配到的相关性数据的得分乘以这个系数
"negative_boost": 10 } } ] } }, "sort": [ "_score", { "last_modification_time": { "order": "asc" } } ], "from": 0, "size": 20 }
复制代码

 

posted on   菜工  阅读(513)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示