Complete MongoDB aggregation pipeline course

Поділитися
Вставка
  • Опубліковано 6 лют 2025
  • Welcome to a youtube channel dedicated to programming and coding related tutorials. We talk about tech, write code, discuss about cloud and devops. That’s what we do all day, all year. We roll out a lot of series and videos on our channel.
    All the learning resources such as code files, documentations, articles and community discussions are available on our website:
    chaicode.com/
    You can find our discord link, github link etc on the above website.
    Twitter/X link: x.com/hiteshdo...
    Discord link: hitesh.ai/discord
    Learn React with 10 projects: • Let's learn react from...
    Learn Docker: • A practical guide on D...
    Learn Kubernetes: • Complete Kubernetes Co...
    How does a browser works: • How does a browser wor...
    How nodejs works: • How node JS works | En...
    Learn Redux-toolkit: • Learn Redux Toolkit in...
    Learn NextJS: • Nextjs Full stack course
    Learn Typescript: • Why to learn Typescript
    Learn Javascript: • Welcome to new JavaScr...
    Learn React Native: • React Native Mastery: ...
    Learn Zustand: • React state management...
    Learn Golang: • How to get started wit...

КОМЕНТАРІ • 116

  • @HiteshCodeLab
    @HiteshCodeLab  Рік тому +37

    Just a quick note, you can use any data for this video. I don't own this data. Half of it was taken from online and half of it was generated by ChatGPT. Data is not important here, these questions and use cases are important and these were were totally designed by me.
    Thanks and please share 😁
    gist.github.com/hiteshchoudhary/a80d86b50a5d9c591198a23d79e1e467

  • @Khedhar108
    @Khedhar108 11 місяців тому +8

    "08:30" - Create collection in Mongodb cluster and inserting data via Mongodb extension from vs code
    "15:14" - How to use aggregation pipeline inside Mongodb
    * Use $ sign with operator and field name*
    "18:38" - count operator with match "31:19" - sum with grouping avoid count "48:46"- Avoid using count with group bad
    "22:15" - grouping by _id with "$filed" "24:06"- grouping all by null
    "24:42" - grouping and getting avg via $avg
    "33:02" - filtering on 2nd stage via sort
    " 35:36" - summarizing questions
    "51:52" - Nested drilling and sorting and limiting***

    • @rodgersmora1881
      @rodgersmora1881 10 місяців тому

      question is, how do we put it in code if you are using node.js for example?

  • @tarunbidaliya9438
    @tarunbidaliya9438 Рік тому +47

    Some additional tips
    1) Always think TWICE when you are using operators like "$unwind' because it is very costly operator because it creates multiple copies of a same documents. Try to think some other possible solution. Some costly operators are: "$lookup", "$unwind", "$facet", etc.
    2) It is a best practice to use $project after the $group stage in the pipeline because "by default, mongodb return a BSON object and not a JSON object" and BSON object have more properties than a JSON object. So using the $project, you can get the JSON object You can study this point for more knowledge.
    3) If the size of your document is big, then always use ".allowDiscUse(true)" in your aggregation pipeline.
    4) When dealing with larger chunks of data, use "cursor" and "batchSize" approach.

    • @CookerSingh
      @CookerSingh Рік тому

      Although not always used, the .allowDiskUse(true) option causes MongoDB to create temporary files on disk and use these files to perform aggregation operations. Since disk I/O is much slower than memory I/O, In some cases, allowing disk usage may strain performance.

    • @DineshPawartech
      @DineshPawartech Рік тому

      Ya using unwind can cuases problem too so for that need to know about arrayElment like operators ,the point you are saying totally aggree with that

    • @arindamdan8689
      @arindamdan8689 7 місяців тому

      tx for this information i never know that and I use this operators in many queries from now on I will mind this things before using

    • @samit840
      @samit840 2 місяці тому

      how did u got so much in depth knowledge?

  • @paulfleischer-djoleto4429
    @paulfleischer-djoleto4429 7 місяців тому +4

    I'm quite impressed with this video. I tried learning the MongoDB aggregation pipeline two years ago. I could not grasp it. With this video, I am confident to apply it to my Node.js backend projects with ease. It has also helped to learn how to use the MongoDB docs. With this, I will watch your other videos due to your easy way of teaching. More grease to your elbow.

  • @tanishkagupta6864
    @tanishkagupta6864 9 місяців тому +39

    I don't understand what kind of content people want in the world of paid classes? These videos are totally free. is this the reason of not getting credit? Let's appreciate his explanation and please show some support i don't want him to stop making videos.

  • @samit840
    @samit840 2 місяці тому

    Its really very very underrated, it should have its views in millions. If anyone wants to learn anything useful for MongoDB this is the only video. beautifully explained

  • @ravanabuddha3955
    @ravanabuddha3955 2 місяці тому

    Thank you very much for teaching it this way by solving scenario/requirement based questions, rather than just talking about all the operators present in mongodb.

  • @Reel_InsightYT
    @Reel_InsightYT Рік тому +1

    Gratitude to Hitesh Choudhary for the insightful MongoDB aggregation pipeline tutorial! His expertise and clear explanations have been instrumental in enhancing my understanding of this powerful feature. Thank you, Hitesh, for your valuable contribution to the developer community!"

  • @CaptainJackSparrow72
    @CaptainJackSparrow72 Місяць тому

    I am here after completing the Aggregation and pipelines video on Chai or Code . Really Sir Nobody can't teach as you teach, I paid 80k for full-stack dev and now I am a Full-Stack dev but really sir I have learned all things like JavaScript, ReactJs and BackEnd from you . Really Sir you are my hero and I am your fan 🥺

  • @Nitesh_Saini_
    @Nitesh_Saini_ Рік тому +3

    Guruji aapki is series ki first video se hi dekh rha hu

  • @avikacharyya1005
    @avikacharyya1005 2 місяці тому

    One of the best videos on aggregation. Thanks a lot sir Ji....❤

  • @Aasim
    @Aasim Місяць тому

    Best series on the mongodb aggression pipeline on the internet. Thank you so much Hitesh sir ❤

  • @sidhantdhyani9567
    @sidhantdhyani9567 Рік тому +2

    At 49:18 , Just wanted to tell, We can count No. of males and females using this also
    [
    {
    $group: {
    _id: '$gender',
    count: {
    $count: {}
    }
    }
    }
    ]
    But $count is generally used for counting no of documents in a stage.

  • @ndeyesalydione9288
    @ndeyesalydione9288 Місяць тому +1

    Thank you from Senegal

  • @theindianmoviemantra5256
    @theindianmoviemantra5256 Рік тому +1

    This is best video to learn MongoDB pipeline. Thankyou sir.........

  • @mutharasum9507
    @mutharasum9507 11 місяців тому

    You taught me about pipeline aggregation in mongo db with detailed explanation....🎉 Thanks 🎉

  • @sumantabhattacharya9694
    @sumantabhattacharya9694 5 місяців тому +3

    [
    {
    $unwind: {
    path: "$tags",
    }
    },
    {
    $group: {
    _id: "$_id",
    count: {
    $sum: 1
    }
    }
    },{
    $group: {
    _id: null,
    avg: {
    $avg: "$count"
    }
    }
    }
    ]
    $unwind: This operator breaks up the array field ($tags) into individual documents. If a document has 3 elements in the tags array, it will create 3 separate documents, each containing one element from the array.
    $group: The first $group groups these documents back together by their original _id. It counts how many documents were created for each _id, which corresponds to the number of elements in the tags array for each user.
    $group: The second $group aggregates these counts into a single document and calculates the average ($avg) number of tags per user.

  • @nehabansal370
    @nehabansal370 11 місяців тому

    Thanks for your unique way of tutorials, with practical implementation and assignments. Learnt MongoDB and feeling confident in same. Also this helped me in Javascript Backend assignment.
    Really liked your way of teaching 😇

  • @awaraamin6850
    @awaraamin6850 6 місяців тому

    Thank you so so much Man! Such incredible work! WE ARE HAPPY WE HAVE PEOPLE LIKE YOU ON THIS PLANET!

  • @pasej5
    @pasej5 Рік тому

    This is gold. This is the best tutorial on MongoDB out there. It is nice and easy to follow thank you, bro🙏🙏

  • @shivamprasad-jm3bg
    @shivamprasad-jm3bg Рік тому

    omg, I can't believe this is the best video on MongoDB aggregation pipeline

  • @telescope3801
    @telescope3801 2 місяці тому

    Great tutorial I have ever seen. Thank you a lot for this precious tutorial.

  • @albertoiong6895
    @albertoiong6895 11 місяців тому

    You help me a lot in learning MongoDB operations besides those for CRUD. I am more confident in using aggregation pipeline to collect statistic information now. Thanks you for your work! Expecting your new video on Tailwindcss...

  • @manojbhamre6062
    @manojbhamre6062 10 місяців тому

    This is understated series...u made aggression so easy ❤❤

  • @oumaimabenjouida6724
    @oumaimabenjouida6724 7 місяців тому

    First, thank you for your excellent explanation, I loved the course, enjoyed it a lot, and learned from it. but I would like to add a point, you said at the beginning of the course that this tutorial is for beginners which is not necessary because, this is my first time studying MongoDB aggregation and MongoDB in general, but I do have a background in Software Enginnering. However, I find the course perfect for first learning and global all the basics needed to start working with MongoDB Aggregations, but not enough for more advanced and complex queries. so I recommend you to add a course for advanced and complex queries. we will appreciate it a lot. Thank you!!!

  • @DanielAdekunle-wn6pv
    @DanielAdekunle-wn6pv 7 місяців тому

    thank you very much for sharing, this is very very very very insightful, you 've just saved me a lot of time of wondering up and down to understand aggregation pipeline

  • @tommymalm
    @tommymalm 5 місяців тому

    Really good course! Love your energy, very easy to follow along with the different missions

  • @thanhquachable
    @thanhquachable Рік тому +2

    Hi Hitesh, thank you for such an informative video about MongoDB Aggregration.
    I am new to MongoDB and this is very helpful.
    For those who want to take it step further to display only the author_name instead of the whole object 🤓 :
    [
    {
    $lookup: {
    from: "authors",
    localField: "author_id",
    foreignField: "_id",
    as: "author_details"
    }
    },
    {
    $addFields: {
    author_details: {$arrayElemAt: ["$author_details", 0]}
    }
    },
    {
    $addFields: {
    author_name: "$author_details.name"
    }
    },
    {
    $project: {
    author_name: 1, id: 1, genre: 1, author_id: 1, title: 1
    }
    }
    ]

  • @AmpulsePerspectives-og4ei
    @AmpulsePerspectives-og4ei Рік тому +3

    Guruji aap aap mahaan hoo❤❤

  • @the_good_deeds_channel
    @the_good_deeds_channel 10 місяців тому

    Great video on aggregation. Thank you Hitesh! I think we can have more scenarios like operations on array of objects (and when some fields don't exist in some documents). These are more challenging in real life.

  • @mainakmukhrjee6328
    @mainakmukhrjee6328 Рік тому +2

    Nice video sir! Will surely implement this in my side project!

  • @vaibhav_prajapat_7725
    @vaibhav_prajapat_7725 8 місяців тому

    Thank you sir. This vid took my mongo knowledge at next level ❤❤

  • @saadsohail8204
    @saadsohail8204 7 місяців тому

    Amazing way of teaching. Thank you so much!

  • @ankishkhandelwal1061
    @ankishkhandelwal1061 7 місяців тому

    this can be another way the question
    Q. number of users which have "ad" as a tag at index 2
    [
    {
    $unwind: {
    path: "$tags",
    includeArrayIndex: "arrayindex",
    },
    },
    {
    $match: {
    $and: [
    {
    arrayindex: 1,
    },
    {
    tags: "ad",
    },
    ],
    },
    },
    {
    $count: 'users'
    }
    ]

  • @anonyone8834
    @anonyone8834 Рік тому +11

    I think you taught aggregtion better in english compared to tut on chai aur code

  • @MOSELEY_DEV
    @MOSELEY_DEV 8 місяців тому

    This video is awesome 😁😁
    Thanks Hitesh

  • @codermadushan
    @codermadushan 2 місяці тому

    Thank you very much. It helps me a lot

  • @shanthoshkumar57
    @shanthoshkumar57 10 місяців тому

    you have nailed it, Bro! ❤‍🔥

  • @surendrareddyreddy1913
    @surendrareddyreddy1913 3 місяці тому

    Thanks much Hitesh

  • @Unknownnng
    @Unknownnng Місяць тому

    Great session

  • @jatin_9911
    @jatin_9911 Рік тому

    thank you sir ♥ ♥
    The video helped me a lot to complete your JS backend assignment.
    Your ChaiAurBackend series is awesome, too

  • @dillanclark864
    @dillanclark864 14 днів тому

    Came for the MongoDB, stayed for the viiibe :)

  • @riseup902
    @riseup902 6 місяців тому

    Really helpful video! I learned alot

  • @josemfcheo
    @josemfcheo Рік тому

    I just needed this! thanks so much!

  • @lennonfernandes1696
    @lennonfernandes1696 Місяць тому

    Can you do video on how to use indexes on aggregation pipeline

  • @davidmukoro1166
    @davidmukoro1166 Рік тому +2

    Thanks so much for this tutorial.Could you take it a little further by actually writing a backend NodeJs to utilize those query results of the aggregation.I mean how to use it in the backend

    • @sidhantdhyani9567
      @sidhantdhyani9567 Рік тому +2

      in node you can use it like you might have used products.find() method or products.findByID() method, in the same way you can use product.Aggregate() and inside parenthesis write your aggregation query. If that helps ✌.

    • @davidmukoro1166
      @davidmukoro1166 Рік тому

      @@sidhantdhyani9567 : Perfect!!!! That solves my query and it has helped me so much. Now i am beginning to like mongodb.

  • @sallbro786
    @sallbro786 6 місяців тому +1

    Can u make video on indexing too

  • @yugsingh2133
    @yugsingh2133 3 місяці тому

    great explanation sir

  • @techjagat4714
    @techjagat4714 8 місяців тому

    Thanks a lot sir for this tutorial❤❤

  • @Amir-tt8qw
    @Amir-tt8qw 10 місяців тому

    Thanks for the tutorial ❤.

  • @mozammilpagal6876
    @mozammilpagal6876 Рік тому +1

    hii sir love from chai aur code😃😆

  • @Truth-seeker333
    @Truth-seeker333 6 місяців тому

    awesome content

  • @AyabaCodes
    @AyabaCodes 2 місяці тому

    Wow! wonderful course. Can i like more than once?

  • @dasmala9175
    @dasmala9175 Рік тому

    Excited 🎉

  • @shivarajbandaru2216
    @shivarajbandaru2216 Рік тому

    east or best bhai is best

  • @friderichwisniewski8154
    @friderichwisniewski8154 Рік тому

    we want more videos on MongoDB Aggregation Pipeline

  • @Md.BulbulAhammed
    @Md.BulbulAhammed 10 місяців тому

    Thank you sir, for important tutorial

  • @ayushgarg1851
    @ayushgarg1851 11 місяців тому

    If anyone is not able to use the regex expression as shown in the video use this instead
    [
    {
    $match: {
    phone:{
    $regex: "^\\+1"
    }
    }
    },
    {
    $count:"Number starting from +1"
    }
    ]

  • @Zara-pn9im
    @Zara-pn9im 7 місяців тому

    thank you so. much sir

  • @aroobazaman2939
    @aroobazaman2939 7 місяців тому

    best video

  • @ImthiazRagib-mn2oc
    @ImthiazRagib-mn2oc 8 місяців тому

    You are a career maker. love from UAE

  • @naveenp.n6578
    @naveenp.n6578 Місяць тому

    What are the steps to create mongodb atlas

  • @vinod-ci5gy
    @vinod-ci5gy Рік тому

    Thank you sir ❤

  • @sandipshrestha5342
    @sandipshrestha5342 Рік тому

    Thanks ❤❤

  • @nigam_sharma
    @nigam_sharma Рік тому

    Its amazing ❤

  • @abhinay.k
    @abhinay.k 4 місяці тому

    thanks

  • @r1shabhnegi
    @r1shabhnegi 11 місяців тому

    great tutorial tysm

  • @DevLife_in
    @DevLife_in Рік тому

    Helpful, Thanks
    🤟🤘

  • @mdm9b
    @mdm9b 11 місяців тому

    great course

  • @rishiraj2548
    @rishiraj2548 Рік тому

    Great! Thanks.

  • @CrittiZops
    @CrittiZops Рік тому

    Sir can you make a video on Docker & K8s? That would be really helpful :)

  • @mdbappihossain2997
    @mdbappihossain2997 8 місяців тому

    wow😮😮

  • @JeetuKumar-wd1uw
    @JeetuKumar-wd1uw Рік тому +1

    Sir es video ko hindi mai layea please so that I can learn properly

  • @Shiv_Kumar_Singh__
    @Shiv_Kumar_Singh__ Рік тому

    thank you sir :)

  • @FreeTrial0315
    @FreeTrial0315 Рік тому +3

    Sorry sir I cannot purchase your paid course bacause you say that real developer is that who do self not watch only tutorial

  • @i_vishalsah01
    @i_vishalsah01 Рік тому +1

    Sir, could ypu help us with a mongo db aggregation project as it is almost impossible to find a good one it will help us get to know more how this is used in production live projects

  • @shehza-d
    @shehza-d Рік тому

    Where can i get the list of questions??

  • @AshutoshSingh-fy2xc
    @AshutoshSingh-fy2xc Рік тому

    Sir, I am not able to access lco app and website.Its saying contact Admin.Please help

  • @bhavdeepsingh4982
    @bhavdeepsingh4982 9 місяців тому

    Sir app aggregation ki Hindi me video bda doo

  • @ShubhanshuSneh-f5x
    @ShubhanshuSneh-f5x 11 місяців тому

    nice video

  • @ariyanavra1512
    @ariyanavra1512 8 місяців тому

    ❤❤

  • @Skilla_code
    @Skilla_code Рік тому

    Ok sir

  • @VishalKumar-je1gq
    @VishalKumar-je1gq Рік тому

    I am not able to find any good D3 js tutorial video ?? Any suggestions.

  • @titangaming2470
    @titangaming2470 7 місяців тому

    Bro can make me software enginner in month!

  • @noman-i6r
    @noman-i6r 5 місяців тому

  • @sujaysaha7429
    @sujaysaha7429 Рік тому

    Sir 1 on 1 kese baat kr skte hai aap se ?

  • @jacquelynecarmen
    @jacquelynecarmen 7 місяців тому

    It looks like array.map().filter().reduce().

  • @rohanchoudhary4034
    @rohanchoudhary4034 Рік тому

    I miss LCO

  • @Darkgamer_019
    @Darkgamer_019 Рік тому +1

    Sir mongo DB को हिंदी मैं लाहो sir plz......

  • @ravipratap2349
    @ravipratap2349 Рік тому

    ❤❤❤❤❤❤❤❤❤❤❤

  • @rayansingh5246
    @rayansingh5246 Рік тому

    Hello ❤sir ji

  • @JustUs80
    @JustUs80 Рік тому

    👍

  • @arindamdutta7369
    @arindamdutta7369 Рік тому +3

    Not able to understand, what is being happening here . Kabhi kabhi bolte hai aap free course sa kuch a to z mil jayega. kabhi backend ka 6999 rs lete hai

  • @walk_with_mohan
    @walk_with_mohan 2 місяці тому

    ok

  • @onlineworld11111
    @onlineworld11111 Рік тому

    Hey

  • @shubhamkakad10x
    @shubhamkakad10x Рік тому

    #chaiaurcode

  • @Mahmudulhasan-ts5hm
    @Mahmudulhasan-ts5hm 2 місяці тому

    you talk too much,

  • @karankumarthakkar7265
    @karankumarthakkar7265 2 місяці тому

    Exteremely grateful for such content! 🫡❤

  • @rakeshchoudhary894
    @rakeshchoudhary894 Рік тому +1

    Hi sir

  • @rakeshchoudhary894
    @rakeshchoudhary894 Рік тому

    Hlo sir ji