I am trying to filter the products from the product collection based on price.
Current Product Collection:
[
{
  _id: ObjectId("56f277b1279871c20b8b4566"),
  product_name:'sample product 1',
  product_items:[
         {
            product_price: 50.99,
            product_item_no: '123456789',
            product_images:['default.png']
          },
          {
            product_price: 11.99,
            product_item_no: '683456789',
            product_images:['default2.png']
          }
       ],
       product_status_is_active: true,
},
{
  _id: ObjectId("56f277b1279871c20b8b4567"),
  product_name:'sample product 2',
  product_items:[
         {
            product_price: 12.99,
            product_item_no: '45678923',
            product_images:['default2.png']
          },
          {
            product_price: 66.99,
            product_item_no: '683456789',
            product_images:['default4.png']
          }
       ],
       product_status_is_active: true,
}
]
mongoose query:
{
     '$match': {
       product_status_is_active: true,
       product_items: { '$elemMatch': { product_price: { '$gte': 60, '$lte': 100 } } }
    }
  },
Current Output:
{
  _id: ObjectId("56f277b1279871c20b8b4567"),
  product_name:'sample product 2',
  product_items:[
         { // This object should not display
            product_price: 12.99,
            product_item_no: '45678923',
            product_images:['default2.png']
          },
          {
            product_price: 66.99,
            product_item_no: '683456789',
            product_images:['default4.png']
          }
       ],
       product_status_is_active: true,
}
Expecting output like:
{
  _id: ObjectId("56f277b1279871c20b8b4567"),
  product_name:'sample product 2',
  product_items:[
          {
            product_price: 66.99,
            product_item_no: '683456789',
            product_images:['default4.png']
          }
       ],
       product_status_is_active: true,
}
But the Output of my Query contains also the nonmatching product_price.
How I can force MongoDB to return only the product_price, which matched my query?
Greetings and thanks.
 
    