OpenSearch/docs/reference/query-dsl/queries/span-not-query.asciidoc

34 lines
1.0 KiB
Plaintext
Raw Normal View History

[[query-dsl-span-not-query]]
=== Span Not Query
Removes matches which overlap with another span query. The span not
query maps to Lucene `SpanNotQuery`. Here is an example:
[source,js]
--------------------------------------------------
{
"span_not" : {
"include" : {
"span_term" : { "field1" : "hoya" }
},
"exclude" : {
"span_near" : {
"clauses" : [
{ "span_term" : { "field1" : "la" } },
{ "span_term" : { "field1" : "hoya" } }
],
"slop" : 0,
"in_order" : true
}
}
}
}
--------------------------------------------------
The `include` and `exclude` clauses can be any span type query. The
`include` clause is the span query whose matches are filtered, and the
`exclude` clause is the span query whose matches must not overlap those
returned.
In the above example all documents with the term hoya are filtered except the ones that have 'la' preceding them.