ElasticSearch学习之路-day20

转载自:https://blog.csdn.net/chengyuqiang/column/info/18392,ES版本号6.3.0

按照文档添加顺序排序

GET website/_search
GET website/_search
{
  "query": {
    "match_all": {}
  }
}

按照文档相关度评分排序

GET website/_search
{
  "query": {
    "term": {
      "title": {
        "value": "centos"
      }
    }
  }
}

返回结果

{
  "took": 22,
  "timed_out": false,
  "_shards": {
    "total": 5,
    "successful": 5,
    "skipped": 0,
    "failed": 0
  },
  "hits": {
    "total": 2,
    "max_score": 0.9227539,
    "hits": [
      {
        "_index": "website",
        "_type": "blog",
        "_id": "6",
        "_score": 0.9227539,
        "_source": {
          "title": "CentOS更换国内yum源",
          "author": "程裕强",
          "postdate": "2016-12-30",
          "abstract": "CentOS更换国内yum源",
          "url": "http://url.cn/53946911"
        }
      },
      {
        "_index": "website",
        "_type": "blog",
        "_id": "3",
        "_score": 0.2876821,
        "_source": {
          "title": "CentOS升级gcc",
          "author": "程裕强",
          "postdate": "2016-12-25",
          "abstract": "CentOS升级gcc",
          "url": "http://url.cn/53868915"
        }
      }
    ]
  }
}

指定字段排序
按照postdate日期降序排序

GET website/_search
{
  "query": {
    "match_all": {}
  },
  "sort": [
    {
      "postdate": {
        "order": "desc"
      }
    }
  ]
}

返回结果

{
  "took": 10,
  "timed_out": false,
  "_shards": {
    "total": 5,
    "successful": 5,
    "skipped": 0,
    "failed": 0
  },
  "hits": {
    "total": 10,
    "max_score": null,
    "hits": [
      {
        "_index": "website",
        "_type": "blog",
        "_id": "9",
        "_score": null,
        "_source": {
          "title": "to be or not to be",
          "author": "somebody",
          "postdate": "2018-01-03",
          "abstract": "to be or not to be,that is the question",
          "url": "http://url/63991802"
        },
        "sort": [
          1514937600000
        ]
      },
      {
        "_index": "website",
        "_type": "blog",
        "_id": "8",
        "_score": null,
        "_source": {
          "title": "es高亮",
          "author": "程裕强",
          "postdate": "2017-01-03",
          "abstract": "Elasticsearch查询关键字高亮",
          "url": "http://url/53991802"
        },
        "sort": [
          1483401600000
        ]
      },
      {
        "_index": "website",
        "_type": "blog",
        "_id": "5",
        "_score": null,
        "_source": {
          "title": "libstdc++.so.6",
          "author": "程裕强",
          "postdate": "2016-12-30",
          "abstract": "libstdc++.so.6问题解决",
          "url": "http://url.cn/53946911"
        },
        "sort": [
          1483056000000
        ]
      },
      {
        "_index": "website",
        "_type": "blog",
        "_id": "6",
        "_score": null,
        "_source": {
          "title": "CentOS更换国内yum源",
          "author": "程裕强",
          "postdate": "2016-12-30",
          "abstract": "CentOS更换国内yum源",
          "url": "http://url.cn/53946911"
        },
        "sort": [
          1483056000000
        ]
      },
      {
        "_index": "website",
        "_type": "blog",
        "_id": "7",
        "_score": null,
        "_source": {
          "title": "搭建Ember开发环境",
          "author": "程裕强",
          "postdate": "2016-12-30",
          "abstract": "CentOS下搭建Ember开发环境",
          "url": "http://url.cn/53947507"
        },
        "sort": [
          1483056000000
        ]
      },
      {
        "_index": "website",
        "_type": "blog",
        "_id": "4",
        "_score": null,
        "_source": {
          "title": "vmware复制虚拟机",
          "author": "程裕强",
          "postdate": "2016-12-29",
          "abstract": "vmware复制虚拟机",
          "url": "http://url.cn/53946664"
        },
        "sort": [
          1482969600000
        ]
      },
      {
        "_index": "website",
        "_type": "blog",
        "_id": "3",
        "_score": null,
        "_source": {
          "title": "CentOS升级gcc",
          "author": "程裕强",
          "postdate": "2016-12-25",
          "abstract": "CentOS升级gcc",
          "url": "http://url.cn/53868915"
        },
        "sort": [
          1482624000000
        ]
      },
      {
        "_index": "website",
        "_type": "blog",
        "_id": "2",
        "_score": null,
        "_source": {
          "title": "watchman源码编译",
          "author": "程裕强",
          "postdate": "2016-12-23",
          "abstract": "CentOS7.x的watchman源码编译",
          "url": "http://url.cn/53844169"
        },
        "sort": [
          1482451200000
        ]
      },
      {
        "_index": "website",
        "_type": "blog",
        "_id": "1",
        "_score": null,
        "_source": {
          "title": "Ambari源码编译",
          "author": "程裕强",
          "postdate": "2016-12-21",
          "abstract": "CentOS7.x下的Ambari2.4源码编译",
          "url": "http://url.cn/53788351"
        },
        "sort": [
          1482278400000
        ]
      },
      {
        "_index": "website",
        "_type": "blog",
        "_id": "search",
        "_score": null,
        "_source": {
          "query": {
            "common": {
              "title": {
                "query": "to be",
                "cutoff_frequency": 0.0001
              }
            }
          }
        },
        "sort": [
          -9223372036854776000
        ]
      }
    ]
  }
}

多字段排序
(1)准备数据

PUT my-index
PUT my-index/persion/1
{
  "name":"张三",
  "age":20,
  "salary":6000
}
PUT my-index/persion/2
{
  "name":"李四",
  "age":20,
  "salary":8000
}
PUT my-index/persion/3
{
  "name":"王五",
  "age":21,
  "salary":6000
}
PUT my-index/persion/4
{
  "name":"刘六",
  "age":21,
  "salary":8000
}

(2)salary降序,age升序

GET my-index/_search
{
  "sort": [
    {
      "salary": {
        "order": "desc"
      }
    },
    {
      "age": {
        "order": "asc"
      }
    }
  ]
}

返回结果

{
  "took": 83,
  "timed_out": false,
  "_shards": {
    "total": 5,
    "successful": 5,
    "skipped": 0,
    "failed": 0
  },
  "hits": {
    "total": 4,
    "max_score": null,
    "hits": [
      {
        "_index": "my-index",
        "_type": "persion",
        "_id": "2",
        "_score": null,
        "_source": {
          "name": "李四",
          "age": 20,
          "salary": 8000
        },
        "sort": [
          8000,
          20
        ]
      },
      {
        "_index": "my-index",
        "_type": "persion",
        "_id": "4",
        "_score": null,
        "_source": {
          "name": "刘六",
          "age": 21,
          "salary": 8000
        },
        "sort": [
          8000,
          21
        ]
      },
      {
        "_index": "my-index",
        "_type": "persion",
        "_id": "1",
        "_score": null,
        "_source": {
          "name": "张三",
          "age": 20,
          "salary": 6000
        },
        "sort": [
          6000,
          20
        ]
      },
      {
        "_index": "my-index",
        "_type": "persion",
        "_id": "3",
        "_score": null,
        "_source": {
          "name": "王五",
          "age": 21,
          "salary": 6000
        },
        "sort": [
          6000,
          21
        ]
      }
    ]
  }
}

猜你喜欢

转载自blog.csdn.net/qq_23536449/article/details/92612105
今日推荐