# Safe empty query

**URL:** <https://discuss.elastic.co/t/safe-empty-query/13353>\
**Category:** Elasticsearch\
**Created:** [August 27, 2013, 5:29pm UTC](https://discuss.elastic.co/t/safe-empty-query/13353 "2013-08-27T17:29:28Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![justinpa](https://avatars.discourse-cdn.com/v4/letter/j/3d9bf3/32.png) [@justinpa](https://discuss.elastic.co/u/justinpa)\
**Post date:** [August 27, 2013, 5:29pm UTC](https://discuss.elastic.co/t/safe-empty-query/13353/1 "2013-08-27T17:29:28Z")

</div>

Is there a safe/standard way to create a bool query that is guaranteed to give an empty result set? Nesting an empty query into a bool query's should gives me parse errors.

---

<div class="post-metadata">

**Author:** ![Blahord](https://avatars.discourse-cdn.com/v4/letter/b/8dc957/32.png) [@Blahord](https://discuss.elastic.co/u/Blahord)\
**Post date:** [February 2, 2016, 9:31am UTC](https://discuss.elastic.co/t/safe-empty-query/13353/2 "2016-02-02T09:31:36Z")

</div>

You can do the following:

`{"query":{"bool":{"must_not":[{"match_all": {}}]}}}`

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 5, 2017, 11:19pm UTC](https://discuss.elastic.co/t/safe-empty-query/13353/3 "2017-07-05T23:19:44Z")

</div>


