开发者

elastic-search on/and nesting possible?

开发者 https://www.devze.com 2023-03-07 22:43 出处:网络
Can and/or be nes开发者_StackOverflow社区ted in filters? I want to filter something like this... a=1 AND ( d=NULL OR d>5 )

Can and/or be nes开发者_StackOverflow社区ted in filters? I want to filter something like this... a=1 AND ( d=NULL OR d>5 )

Can anyone help?


You can use a Lucene query string like this in elastic search:

http://www.elasticsearch.org/guide/reference/query-dsl/query-filter.html

and here is a reference to how you can use () for grouping ... one thing to note is the I found prefixing group statements with the + must have symbol returns more accurate results.

http://lucene.apache.org/java/3_2_0/queryparsersyntax.html

grouping is at the end.

... oh and if you going to use greater than RangeQuery can cover this case by setting either the upper or lower term to null.

J.


This may be a bit late, but if anyone else is looking for this, I found that search word AND filters are easy to add. Just use more words in the query and separate them with space.

Scala Example:

val queryString = client.prepareSearch().setQuery(QueryBuilders.matchQuery("json.path.to.node", "sky car")).setSize(MAX_RESULTS)
val response = queryString.execute().actionGet()

Now response will have all results which containt both sky AND car

0

精彩评论

暂无评论...
验证码 换一张
取 消