// S36 - Aggregation in MongoDB and Query Case Studies: /* Sample solution: return async function addOneQuery(db) { await (db.collectionName.aggregate([ { $match: { fieldA, valueA } }, { $group: { _id: "$fieldB" }, { result: { operation } } } ])); } Note: - Do note change the functionName or modify the exports - Delete all the comments before pushing. */ // 1. Use the count operator to count the total number of fruits on sale async function fruitsOnSale(db) { return await( // Add query here ); }; // 2. Use the count operator to count the total number of fruits with stock more than 20 async function fruitsInStock(db) { return await( db.fruits.aggregation([ {$count: "stock" , {$gt: 20} }]); // 3. Use the average operator to get the average price of fruits onSale per supplier async function fruitsAvePrice(db) { return await( db.fruits.aggregation([ {$match: {$onsale:true}, {$group: {$supplier_id, averagePrice: {$avg :"$price"}}} } }]); // 4. Use the max operator to get the highest price of a fruit per supplier async function fruitsHighPrice(db) { return await( // Add query here ); }; // 5. Use the min operator to get the lowest price of a fruit per supplier async function fruitsLowPrice(db) { return await( // Add query here ); } try{ module.exports = { fruitsOnSale, fruitsInStock, fruitsAvePrice, fruitsHighPrice, fruitsLowPrice }; } catch(err){ };