I am using mongodb in nodejs. I want to early select only 50 Documents per pallet number inside my pipeline first stage. How can I do it? I want to do this because given a pallet number it can have 1 to 1000 serial numbers associalted with it.
My Document schema and pipeline looks like below
{
PalletNumber: string // This might repeat
SerialNumber: string and unique
}
const documents = await collection.aggregate([{
$match:{
// I want to early select only 50 Documents per unique pallet number
PalletNumber:{ $in: PalletNumbers}
},
{
$group: {_id: "PalletNumber", SerialNumbers: {$push:"$SerialNumbers"}}
}
}])
example of documents
{
_id: A
PalletNumber: SS // This remains same
SerialNumber: 01 // this can range from 1 to 1000
},
{
_id: A
PalletNumber: SS1 // This remains same
SerialNumber: 01 // this can range from 1 to 1000
},
{
_id: A
PalletNumber: SS2 // This remains same
SerialNumber: 01 // this can range from 1 to 1000
}