Search
 
SCRIPT & CODE EXAMPLE
 

JAVASCRIPT

aggregate mongodb

// MonogDB Aggregation Framework
// $project -> $match -> $group -> $sort -> ouput
// $count, $skip, Sunwind,
// $match
db.users.aggregate([
{ stage 1}, $project
 { stage 2}, $match
  { stage 3}, $group
   { stage 4}, $sort
]);

* match : 
db.users.aggregate([{$match:{'status':'inactive'}}]).pretty();

* group :
// group by department 
db.users.aggregate([{$group:{_id:'$department'}}]).pretty();
{"id" : "IT" } {
{"_id" : "TECH" }
{_"id" : "HR" }

- multiple group 
db.users.aggregate([{$group:{_id:{age:'Şage',gender:'$gender'}}}]).pretty();

{"id" : { "age" : "27", 'gender' : "female" }}
{"_id" : { "age" : "25", "gender" : "female" } }
{ "_id" : { "age" : "26" "gender" : "male" } }
{ "_id" : { "age" : "24", "gender" : "male" } }
{ "_id" : { "age" : "22", "gender" : "male" } }
{"_id" : { "age" : "27", "gender" : "male" } }

* sort 
db.users.aggregate([{$group:{_id:'$department'}},{$sort:{_id:1}}]);

* match 
db.users.aggregate([{$match:{status:'active'}},{$project:{name:1,email:1}}]).pretty();

* count 
db.users.aggregate([{$match:{status:'inactive'}},{$count:'totals'}]);

* limit 
db.users.aggregate([{$match:{status:'active'}},{$project:{name:1,email:1}},{Slimit:2}]).pretty();

* unwind 
- It is used for array attribute to show seprate result for that array.

db.users.aggregate([{$unwind:"$language"},{$match:{status:'inactive'}},{$project:{name:1,language:1}}]).pretty();
db.users.aggregate([{$unwind:'$language'},{$group:{_td:'$language'}}]);

* lookup
- Joining two tables
 
db.users.aggregate({
    $lookup:{
        from: "department",
        localField:"dept", 06
        foreignField: "name"
        as: "anything"
})

* out 
- It will create the new collection with that name and storing the data result into it. 
db.users.aggregate([{ $match:{status:'active'}},{$project:{email:1,name:1, id:0}},{'$out':'info'}]).pretty();
Comment

mongodb aggregate project

db.books.aggregate( [ { $project : { title : 1 , author : 1 } } ] )
Comment

mongodb aggregate

let videos= await Beg.aggregate([
        {
          $project: {
            _id: 1,
          },
        },
        {
          $lookup: {
            from: "videos",
            localField: "_id",
            foreignField: "begId",
            as: "videos",
          },
        },
      ]);
Comment

mongodb aggregate cond $in

cond: {
  $and: [{
  	$in: ['$$viewsDoc.year', [1, 2, 3]]
  }]
}
Comment

PREVIOUS NEXT
Code Example
Javascript :: static variable in javascript 
Javascript :: parse data from url javascript 
Javascript :: Error: "line" is not a registered controller 
Javascript :: sequelize left join attributes 
Javascript :: mongoose connect to atlas 
Javascript :: define a class in javascript 
Javascript :: how to get updated data-value in jquery 
Javascript :: how to convert a string to react element in javascript 
Javascript :: javascript image to variable 
Javascript :: convert timestamp to utc javascript 
Javascript :: Error: ENOENT: no such file or directory, mkdir 
Javascript :: anagram js 
Javascript :: promise.all 
Javascript :: magento 2 translate js 
Javascript :: unique array in javascript 
Javascript :: react functional components 
Javascript :: how to add eslint to react project 
Javascript :: jest wait for timeout 
Javascript :: list keys json python 
Javascript :: add decimals javascript 
Javascript :: isfunction javascript 
Javascript :: scroll value bottom js 
Javascript :: await loop javascript 
Javascript :: identify primary colors in img with js 
Javascript :: how to pass custom regex in jquery validation 
Javascript :: how to redirect react router from the app components 
Javascript :: javascript max 
Javascript :: javascript remove object from array 
Javascript :: javascript insert div into another div 
Javascript :: js select keys from object 
ADD CONTENT
Topic
Content
Source link
Name
5+6 =