Filter/query 带有嵌套子表达式
Filter/query with nested subexpressions
我将如何转换查询,例如
(((field1:value1 OR
((field2: value2a AND field0:value0) OR field2:value2b))
AND (field3:value3 OR field4:value4)
OR ((field1:value101 OR field2:value102)
AND field100:value23)
变成 bool query/filter?使用 "nested"
过滤器似乎不允许任意子表达式深度,因为我得到
QueryParsingException[[ptsiem] [nested] filter does not support [should]
我错过了文档中的 and
和 or
过滤器:
- http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-and-filter.html
- http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-or-filter.html
这些似乎允许用户构建任何深度的表达式:
{"or": [
{"and": [
{"term": {"field1": "w1"}},
{"term": {"user": "*admin*"}}
]},
{"and": [
{"term": {"id": "100500" }},
{"term": {"language": "symta"}},
{"term": {"oentuh": "bwmbqjk"}}
]}
]}
我将如何转换查询,例如
(((field1:value1 OR
((field2: value2a AND field0:value0) OR field2:value2b))
AND (field3:value3 OR field4:value4)
OR ((field1:value101 OR field2:value102)
AND field100:value23)
变成 bool query/filter?使用 "nested"
过滤器似乎不允许任意子表达式深度,因为我得到
QueryParsingException[[ptsiem] [nested] filter does not support [should]
我错过了文档中的 and
和 or
过滤器:
- http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-and-filter.html
- http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-or-filter.html
这些似乎允许用户构建任何深度的表达式:
{"or": [
{"and": [
{"term": {"field1": "w1"}},
{"term": {"user": "*admin*"}}
]},
{"and": [
{"term": {"id": "100500" }},
{"term": {"language": "symta"}},
{"term": {"oentuh": "bwmbqjk"}}
]}
]}