多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# Span Not 查询 原文链接 : [https://www.elastic.co/guide/en/elasticsearch/reference/5.4/query-dsl-span-not-query.html](https://www.elastic.co/guide/en/elasticsearch/reference/5.4/query-dsl-span-not-query.html) 译文链接 : [http://www.apache.wiki/pages/viewpage.action?pageId=10029284](http://www.apache.wiki/pages/viewpage.action?pageId=10029284) 贡献者 : [片刻](/display/~jiangzhonglian) [ApacheCN](/display/~apachecn) [Apache中文网](/display/~apachechina) 删除与另一个span查询重叠的匹配项。跨度不查询映射到Lucene SpanNotQuery。这是一个例子: ``` GET /_search { "query": { "span_not" : { "include" : { "span_term" : { "field1" : "hoya" } }, "exclude" : { "span_near" : { "clauses" : [ { "span_term" : { "field1" : "la" } }, { "span_term" : { "field1" : "hoya" } } ], "slop" : 0, "in_order" : true } } } } } ``` include和exclude子句可以是任何跨类型查询。 include子句是对其匹配进行过滤的span查询,而exclude子句是其匹配不能与返回的匹配的span查询。 在上述示例中,除了具有前述之外的所有文档,除了具有术语hoya的文档之外,都将被过滤。 其他顶级选项: | `pre` | 如果在包含范围之前设置标记的数量不能与排除范围重叠。 | | `post` | 如果在包含范围之后设置标记的数量不能与排除范围重叠。 | | `dist` | 如果设置包含范围内的令牌数量不能与排除范围重叠。相当于前置和后置的设置。 |