Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Articles on Trending Technologies
Technical articles with clear explanations and examples
MongoDB query in object of arrays
To query arrays within nested objects in MongoDB, use dot notation to navigate through the object hierarchy and target specific array fields. MongoDB will match documents where the array contains the specified value. Syntax db.collection.find({ "object.nestedObject.arrayField": "value" }); Sample Data db.demo194.insertMany([ { "_id": 101, "details": { "otherDetails": { ...
Read MoreHow to improve the execution time of a query in MongoDB?
To improve the execution time of a query in MongoDB, use indexes on frequently queried fields. Indexes create efficient data structures that allow MongoDB to quickly locate documents without scanning the entire collection. Syntax db.collection.createIndex({ "fieldName": 1 }, { unique: true }); db.collection.find({ "fieldName": "value" }); Create Sample Data with Index First, create a unique index on the LastName field for faster queries ? db.demo193.createIndex({"LastName": 1}, {unique: true}); { "createdCollectionAutomatically": true, "numIndexesBefore": 1, "numIndexesAfter": 2, ...
Read MoreHow to get values of cursor in MongoDB?
To get values of cursor in MongoDB, use the hasNext() method to iterate through cursor results. A cursor is returned by query operations like find() and allows you to process documents one by one. Syntax var cursor = db.collection.find(query); while (cursor.hasNext()) { print(tojson(cursor.next())); } Sample Data db.demo191.insertMany([ {"EmployeeId": 1, "EmployeeName": "Chris Brown"}, {"EmployeeId": 2, "EmployeeName": "David Miller"}, {"EmployeeId": 1, "EmployeeName": "John Doe"}, {"EmployeeId": 1, "EmployeeName": "John Smith"} ]); { ...
Read MoreMongoDB aggregation with multiple keys
MongoDB aggregation with multiple keys allows you to group documents by several fields simultaneously. Use the $group stage with a composite _id object containing multiple grouping fields. Syntax db.collection.aggregate([ { $group: { _id: { field1: "$field1", field2: "$field2" ...
Read MoreMongoDB query to sort by the sum of specified object inside inner array?
To sort by the sum of specified object inside inner array, use $unwind, $group, and $sort in an aggregation pipeline. This approach counts occurrences of specific values within arrays and sorts documents accordingly. Syntax db.collection.aggregate([ { $unwind: "$arrayField" }, { $group: { _id: "$_id", total: { $sum: { $cond: { if: { $eq: ["$arrayField.field", value] }, ...
Read MoreWhat kind of MongoDB query finds same value multiple times in an array?
To find documents where the same value appears multiple times in an array, use the $where operator with JavaScript functions to filter and count duplicate values within array elements. Syntax db.collection.find({ "$where": function() { return this.arrayField.filter(function(element) { return element.field == targetValue; }).length > 1; } }); Sample Data db.demo188.insertMany([ { ...
Read MoreFind in MongoDB documents with filled nested array and reshape the documents result
To find MongoDB documents with filled nested arrays and reshape the results, use the aggregation pipeline with $unwind, $project, and $match operators. This approach filters out empty nested objects and transforms the document structure. Syntax db.collection.aggregate([ { $unwind: "$arrayField" }, { $project: { fieldName: "$arrayField.nestedField" } }, { $match: { fieldName: { $exists: true } } } ]); Create Sample Data db.demo187.insertMany([ { "_id": "101", ...
Read MoreMongoDB query to count the frequency of every element of the array
To count the frequency of every element in an array across all documents in a MongoDB collection, use the aggregation pipeline with $unwind, $group, and $sum operators. Syntax db.collection.aggregate([ { $unwind: "$arrayField" }, { $group: { _id: "$arrayField", count: { $sum: 1 } } } ]); Sample Data db.demo184.insertMany([ { "Names": ["Chris", "David", "Bob"] }, { "Names": ["Chris", "Mike"] }, { "Names": ["Chris", "Bob", "Carol"] } ]); { ...
Read MoreQuery MongoDB subdocument to print on one line?
To display subdocuments in one line format, use $unwind along with aggregate() to flatten array elements, then iterate through results with a custom function. Syntax db.collection.aggregate([ { $match: { "field": "value" } }, { $unwind: "$arrayField" } ]).forEach(function(doc) { print(doc.field1 + ", " + doc.arrayField.subfield + ", " + doc.arrayField.subfield2); }); Sample Data db.demo183.insertOne({ "_id": "110", "DueDate": ISODate("2020-02-04T01:10:42.000Z"), "ProductDetails": [ { ...
Read MoreMongoDB query to search date records using only Month and Day
To search MongoDB documents using only month and day while ignoring the year, use the $where operator with JavaScript functions like getMonth() and getDate(). Syntax db.collection.find({ $where: function() { return this.dateField.getMonth() == monthValue && this.dateField.getDate() == dayValue; } }); Sample Data db.demo181.insertMany([ {"ShippingDate": new ISODate("2020-01-10")}, {"ShippingDate": new ISODate("2019-12-11")}, {"ShippingDate": ...
Read More