1、默认排序规则

默认情况下,是按照_score降序排序的
然而,某些情况下,可能没有有用的_score,比如说filter

  1. GET /_search
  2. {
  3. "query": {
  4. "bool": {
  5. "filter": [
  6. {
  7. "term": {
  8. "author_id": "111"
  9. }
  10. }
  11. ]
  12. }
  13. }
  14. }

当然,也可以是constant_score

GET /_search
{
  "query": {
    "constant_score": {
      "filter": {
        "term": {
          "content": "very"
        }
      }
    }
  }
}

2、定制排序规则

GET /company/_search
{
  "query": {
    "constant_score": {
      "filter": {
        "range": {
          "age": {
            "gte": 30
          }
        }
      }
    }
  },
  "sort": [
    {
      "join_date": {
        "order": "desc"
      }
    }
  ]
}