db.cdr.aggregate([ {$match: { 'variables.start_epoch': { $gte: Date.now() / 1000 - (3600 * 24 * 90) }, $or: [ {'variables.l_company_id': 579}, {'variables.d_company_id': 579} ]} }, {$lookup: { from: 'cdr', localField: 'variables.last_bridge_to', foreignField: 'variables.uuid', as: 'right_part'} }, {$project: { 'variables.billsec': 1, 'variables.sip_req_user': 1, 'x': '$right_part.variables.sip_to_user', 'y': '$right_part.variables.accountcode', 'z': '$right_part.variables.sip_hangup_disposition', 'variables.dialed_user': 1, 'variables.start_stamp': 1, 'variables.start_epoch': 1, 'variables.sip_from_user': 1, 'variables.channel_name': 1, 'variables.hangup_cause': 1} }, {$sort: { 'variables.start_epoch': -1} } ]).pretty()