Visit complete MongoDB roadmap
MongoDB Topic

$all

$all

The $all operator is used to match arrays that contain all specified elements. This allows you to filter documents based on multiple values in a single array field.

Syntax

The basic syntax for using the $all operator is:

{
  <field>: {
    $all: [<value1>, <value2>, ..., <valueN>]
  }
}

Here, <field> refers to the name of the array field that should be queried, and <value1>, <value2>, ..., <valueN> are the values that you want to match against.

Example

Let’s assume we have a collection movies with documents containing the following fields: _id, title, and tags. The tags field is an array of string values.

Here is an example document from the movies collection:

{
  _id: 1,
  title: "The Matrix",
  tags: ["action", "sci-fi", "cyberpunk"]
}

If you want to find all movies with the tags “action” and “sci-fi”, you can use the $all operator as shown below:

db.movies.find({ tags: { $all: ['action', 'sci-fi'] } });

This query would return all documents where the tags array contains both “action” and “sci-fi” values.

Summary

The $all operator allows you to match documents based on the presence of multiple values in an array field. It provides a simple and powerful way to query for documents that meet specific criteria within arrays.

More Topics

Explore related content

View All Topics
Loved by 100K+ Developers

Start Your Learning
Journey Today

Join thousands of developers who are leveling up their skills with structured roadmaps and expert guidance

No credit card required
Always free
Track your progress