Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
MongoDB aggregation framework match OR is possible?
Let us first create a collection with the document. The query to create a collection with a document is as follows −
> db.aggregationFrameworkWithOrMatchDemo.insertOne({"StudentFirstName":"John",
"StudentLastName":"Smith","StudentAge":23});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8ac3a96cea1f28b7aa080d")
}
> db.aggregationFrameworkWithOrMatchDemo.insertOne({"StudentFirstName":"Carol",
"StudentLastName":"Tayor","StudentAge":24});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8ac3bc6cea1f28b7aa080e")
}
> db.aggregationFrameworkWithOrMatchDemo.insertOne({"StudentFirstName":"David",
"StudentLastName":"Miller","StudentAge":21});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8ac3ce6cea1f28b7aa080f")
}
> db.aggregationFrameworkWithOrMatchDemo.insertOne({"StudentFirstName":"Bob",
"StudentLastName":"Taylor","StudentAge":20});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8ac3e16cea1f28b7aa0810")
}
> db.aggregationFrameworkWithOrMatchDemo.insertOne({"StudentFirstName":"Robert",
"StudentLastName":"Smith","StudentAge":20});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8ac3fb6cea1f28b7aa0811")
}
> db.aggregationFrameworkWithOrMatchDemo.insertOne({"StudentFirstName":"Mike",
"StudentLastName":"Miller","StudentAge":27});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c8ac4166cea1f28b7aa0812")
}
Display all documents from a collection with the help of find() method. The query is as follows −
> db.aggregationFrameworkWithOrMatchDemo.find().pretty();
The following is the output −
{
"_id" : ObjectId("5c8ac3a96cea1f28b7aa080d"),
"StudentFirstName" : "John",
"StudentLastName" : "Smith",
"StudentAge" : 23
}
{
"_id" : ObjectId("5c8ac3bc6cea1f28b7aa080e"),
"StudentFirstName" : "Carol",
"StudentLastName" : "Tayor",
"StudentAge" : 24
}
{
"_id" : ObjectId("5c8ac3ce6cea1f28b7aa080f"),
"StudentFirstName" : "David",
"StudentLastName" : "Miller",
"StudentAge" : 21
}
{
"_id" : ObjectId("5c8ac3e16cea1f28b7aa0810"),
"StudentFirstName" : "Bob",
"StudentLastName" : "Taylor",
"StudentAge" : 20
}
{
"_id" : ObjectId("5c8ac3fb6cea1f28b7aa0811"),
"StudentFirstName" : "Robert",
"StudentLastName" : "Smith",
"StudentAge" : 20
}
{
"_id" : ObjectId("5c8ac4166cea1f28b7aa0812"),
"StudentFirstName" : "Mike",
"StudentLastName" : "Miller",
"StudentAge" : 27
}
Here is the query to aggregate framework match OR. We are considering StudentLastName as Smith or Miller −
> db.aggregationFrameworkWithOrMatchDemo.aggregate({
... $match: { $or: [{ StudentLastName: 'Smith' }, { StudentLastName: 'Miller' }] }}).pretty();
The following is the output −
{
"_id" : ObjectId("5c8ac3a96cea1f28b7aa080d"),
"StudentFirstName" : "John",
"StudentLastName" : "Smith",
"StudentAge" : 23
}
{
"_id" : ObjectId("5c8ac3ce6cea1f28b7aa080f"),
"StudentFirstName" : "David",
"StudentLastName" : "Miller",
"StudentAge" : 21
}
{
"_id" : ObjectId("5c8ac3fb6cea1f28b7aa0811"),
"StudentFirstName" : "Robert",
"StudentLastName" : "Smith",
"StudentAge" : 20
}
{
"_id" : ObjectId("5c8ac4166cea1f28b7aa0812"),
"StudentFirstName" : "Mike",
"StudentLastName" : "Miller",
"StudentAge" : 27
}Advertisements