Questions tagged [mongodb-aggregation]

MongoDB is a NoSQL database with the intent of storing billions of records. It offers the aggregation framework as a tool to manipulate and query records. This tag is intended to be used with question specific to this aggregation framework, since aggregation is too general.

147 questions
32
votes
3 answers

Is it possible to do a $lookup aggregation between two databases in Mongodb?

I'm trying to do something like this: use user; db.user.aggregate([ { $lookup: { from: "organization.organization", localField: "organizationId", foreignField: "uuid", as: "user_org" …
Alexander Suraphel
  • 10,103
  • 10
  • 55
  • 90
26
votes
3 answers

group in mongo excluding null values

I have mongo query which does the group operation on the documents. I have almost got the expected results except that I want to refine the results without empty or null values. Currently my query looks like…
19
votes
1 answer

MongoDB - Rewind an $unwind nested array after $lookup using $group

MongoDB aggregation gets exponentially complicated by the minute! I am in so far as to $unwind a nested array and then perform a $lookup by the _id of each object from the unwinded nested array. My final attempt is to reverse the unwinding with…
16
votes
2 answers

MongoDB aggregate: $lookup by _id, then get first element value

When I do $lookup, in my case the foreignField:"_id", I get the found element in an array. Here is one document from the output after $lookup has been done to retrieve fromUser and toUser from the users collection: { _id : { from :…
Granga
  • 1,612
  • 1
  • 14
  • 20
12
votes
3 answers

MongoDB get first and last document in aggregate query

How can I get first and last document based on time field. I can use $group and get $first and $last document, but I don't need grouping here, just get first and last full document. Maybe I could use slice? This query doesn't work: { "aggregate":…
12
votes
2 answers

How to apply condition on $lookup result in mongoDB?

With the reference of my previous question, I have a question about $lookup with add some conditions. You may get enough reference about question from below link description. Photo: {_id: 1, photo_name: '1.jpg', photo_description: 'description 1',…
Dipak
  • 2,248
  • 4
  • 22
  • 55
11
votes
1 answer

mongoose sum a value across all documents

I am looking to count all columns with the name amount in the documents that match my query, tickets.count({time: {$gte: a}, time: {$lte: tomorrow}}).then(function (numTickets) { How can I get the total result of the document column called…
10
votes
5 answers

How to use a for loop in the mongodb shell?

How can i use a for loop in the mongo db shell? My attemps are stucking at this point: for (var i = 0; i <= 6; i=i+0.12){ var n = i + 0.12; db.test.aggregate( { $sort: {'deviation': -1}}, { $unwind: '$foo' }, { $match: { 'foo.km': {$gt:…
8
votes
1 answer

mongodb group and subgroup counts

I have the following document type { "_id" : "-fA2845ORqeyMUItKXfqZw", "user" : "553247ffdc8a4ade4bb09c5e", "state" : 2, "metadata" : { "language" : "en-US" }, "pipeline" : { "api" : "http://localhost:4000", …
8
votes
1 answer

mongodb - Find count of values in other collection

I want to find how many "taskId" of below collectionOne is present in collectionTwo. Here, "taskId" in below collectionOne is embedded inside a array in a document. Also, Let me know the different approaches to do this (if possible).…
6
votes
1 answer

Mongo DB distinct values group within array of objects

let say I have a document model like below { "_id" : "QggaecdDWkZzMmmM8", "features" : [ { "language" : "en", "values" : [ { "name" : "feature 1", "values" : [ …
6
votes
3 answers

Converting mongo array to object with key-value pair

I have a mongo document that contains an array of Strings, and I need to convert this particular array of strings into an array of object containing a key-value pair. Below is my curent appraoch to it. { "_id" :…
6
votes
1 answer

Use array first field in mongo aggregate $lookup query to match a document

I want to use my array field 0th value to find a match in sale document using Mongo aggregate $lookup query. Here is my query: db.products.aggregate([ { $match : { _id:ObjectId("57c6957fb190ecc02e8b456b") } }, { $lookup : { from…
5
votes
1 answer

MongoDB -- Find duplicate documents by multiple keys

I have a collection with documents that look like the following: { "_id" : ObjectId("55b377cb66b393427367c3e2"), "comment" : "This is a comment", "url_key" : "55b377cb66b393427367c3df", //This is an ObjectId from another…
5
votes
1 answer

Reshape MongoDB aggregation result to field value documents

I have a data collection containing data in the following shape: [ {_id: "1", aa1: 45, aa2: 56, bb1: 90, bb2: 78, cc1: 34, cc2: 98 }, {_id: "2", aa1: 76, aa2: 56, bb1: 45, bb2: 67, cc1: 75, cc2: 87 } ] on this data I perform a…
Gerrie van Wyk
  • 679
  • 8
  • 27
1
2 3
9 10