我在Elasticsearch中有以下查询:

{
  "script_fields": {
    "travel_time": {
      "script": {
        "inline": "doc['DateTo'].value - doc['DateFrom'].value"
      }
    }
  },
  "stored_fields": [
    "_source"
    ],
  "query": {
    "bool": {
      "filter": {
        "exists": {
          "field": "DateTo"
        }
      }
    }
  }
}

如何将DateFrom添加到exists过滤器?

最佳答案

您可以添加多个exists条件:

  "query": {
    "bool": {
      "filter": [
       {
         "exists": {
           "field": "DateFrom"
         }
       },
       {
         "exists": {
           "field": "DateTo"
         }
       },
       {
         "script": {
           "script": {
             "inline": "doc['DateTo'].value - doc['DateFrom'].value > 0"
           }
         }
       }
      ]
    }
  }

08-28 03:41