Database
[{"_id":ObjectId("5f33a6bafdb40e7c44a4e663"),"date":ISODate("2020-08-10T01:00:00.000+01:00"),},{"_id":ObjectId("5f33a6bafdb40e7c44a4e664"),"date":ISODate("2020-08-11T01:00:00.000+01:00"),},{"_id":ObjectId("5f33a6bafdb40e7c44a4e665"),"date":ISODate("2020-08-12T01:00:00.000+01:00"),},]
Query
db.collection.aggregate([{"$addFields":{currDay:{"$dayOfMonth":"$$NOW"},dateDay:{"$dayOfMonth":"$date"},dayGap:{"$divide":[{"$subtract":["$$NOW","$date"]},86400000/**miliseconds in a day*/]}}},{$addFields:{date:{"$switch":{"branches":[{"case":{$and:[{$lt:["$dayGap",1]},{$eq:["$dateDay","$currDay"]}]},"then":"today"},{"case":{$lt:["$dayGap",2]},"then":"yesterday"},{"case":{$lt:["$dayGap",1]},"then":"today"}],default:{"$concat":[{"$toString":{"$round":"$dayGap"}}," days ago"]}}}}}],{allowDiskUse:true})