Span near 查询编辑

匹配彼此接近的跨度。可以指定 *slop*,即允许的最大不匹配位置数,以及是否要求匹配按顺序排列。以下是一个示例

response = client.search(
  body: {
    query: {
      span_near: {
        clauses: [
          {
            span_term: {
              field: 'value1'
            }
          },
          {
            span_term: {
              field: 'value2'
            }
          },
          {
            span_term: {
              field: 'value3'
            }
          }
        ],
        slop: 12,
        in_order: false
      }
    }
  }
)
puts response
GET /_search
{
  "query": {
    "span_near": {
      "clauses": [
        { "span_term": { "field": "value1" } },
        { "span_term": { "field": "value2" } },
        { "span_term": { "field": "value3" } }
      ],
      "slop": 12,
      "in_order": false
    }
  }
}

clauses 元素是一个或多个其他 span 类型查询的列表,slop 控制允许的最大不匹配位置数。