var fixTraceIds = function(name){ db.getCollection(name).updateMany( {$expr: { $gt: [ { $strLenCP: "$traceId" }, 16 ]}}, [{$set: {"traceId": {$substr: ["$traceId", {$subtract:[{ $strLenCP: "$traceId" }, 16]}, 16]}}}] ) } var doForDateRange = function(dateStart, dateEnd, func){ var aDay = 24 * 60 * 60000, from = new Date(dateStart), till = new Date(dateEnd), date = from; while(date <= till) { dateStr = date.toISOString().split('T')[0]; func.call(this,dateStr); date = new Date(new Date(date).getTime() + aDay); } }; doForDateRange('2021-07-09','2022-02-15', fixTraceIds);