From 904a87c6715ff5eb4a76ac4982bb605d27765698 Mon Sep 17 00:00:00 2001 From: Aivaras Gotovskis <aivaras.gotovskis@ongr.io> Date: Wed, 8 Jul 2015 09:36:53 +0300 Subject: [PATCH] Add or filter doc. --- docs/Filter/Or.md | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 docs/Filter/Or.md diff --git a/docs/Filter/Or.md b/docs/Filter/Or.md new file mode 100644 index 0000000..7c8ef3c --- /dev/null +++ b/docs/Filter/Or.md @@ -0,0 +1,47 @@ +# Or Filter + +> More info about or filter is in the [official elasticsearch docs][1] + +A filter that matches documents using the OR boolean operator on other filters. + +## Simple example + +```JSON +{ + "filtered" : { + "query" : { + "term" : { "name.first" : "shay" } + }, + "filter" : { + "or" : [ + { + "term" : { "name.second" : "banon" } + }, + { + "term" : { "name.nick" : "kimchy" } + } + ] + } + } +} +``` + +And now the query via DSL: + +```php +$termFilter1 = new TermFilter('name.second', 'banon'); +$termFilter2 = new TermFilter('name.nick', 'kimchy'); + +$orFilter = new OrFilter(); +$orFilter->add($termFilter1); +$orFilter->add($termFilter2); + +$termQuery = new TermQuery('name.first', 'shay'); +$filteredQuery = new FilteredQuery($termQuery, $orFilter); + +$search = new Search(); +$search->addQuery($filteredQuery); +$queryArray = $search->toArray(); +``` + +[1]: https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-or-filter.html -- GitLab