Así que comencé a usar el marco agregado de mongodb hace unos días, así que implementé un límite de $ y un método de salto de $ para mi proyecto de esta manera:
let content = await dataSources.WarehouseItem.aggregate([ { $match: {} }, { $limit: 2 }, { $group: { _id: "$productName", quantity: { $first: "$quantity" }, }, }, ]);Pero este código en lugar de devolver 2 documentos, solo devuelve 1, pero cuando pongo 3 devuelve 2 y cuando pongo 4 devuelve 3 y así sucesivamente, y el método de omisión tampoco funciona como se esperaba, hay 4 documentos dentro de esta base de datos pero no devuelve 3 cuando hago esto:
let content = await dataSources.WarehouseItem.aggregate([ { $match: {} }, { $skip: 1 }, { $group: { _id: "$productName", quantity: { $last: "$quantity" }, }, }, ]);devuelve los 4 documentos completos