Database

[{/**have week 0*/"dateTime":ISODate("2020-06-03"),"value":25},{/**have week 0*/"dateTime":ISODate("2020-05-25"),"value":27},{/** do not have week 0*/"dateTime":ISODate("2023-05-25"),"value":27},{/**have week 0*/"dateTime":ISODate("2024-01-21"),"value":27}]

Query

db.collection.aggregate([/**{* "$match": {* "dateTime": {* "$gte": ISODate("2020-05-01"),* "$lte": ISODate("2020-07-01")* }* }*},*/{"$group":{"_id":{"week":{"$isoWeek":{"date":"$dateTime","timezone":"+00:00"}},"year":{"$year":{"date":"$dateTime","timezone":"+00:00"}}},"maxValue":{"$max":"$value"}}},{"$project":{"_id":{"start":{"$dateToString":{"date":{"$dateFromParts":{"isoWeekYear":"$_id.year","isoWeek":"$_id.week"}},"format":"%Y-%m-%d"}},"end":{"$dateToString":{"date":{"$add":[{"$dateFromParts":{"isoWeekYear":"$_id.year","isoWeek":"$_id.week"}},518400000]},"format":"%Y-%m-%d"}}},"maxValue":"$maxValue"}}])

Result