Database

[{"TeacherID":212,"StudentID":1},{"TeacherID":212,"StudentID":2},{"TeacherID":123,"StudentID":3},{"TeacherID":223,"StudentID":4},{"TeacherID":212,"StudentID":2},{"TeacherID":223,"StudentID":3},{"TeacherID":212,"StudentID":2},{"TeacherID":212,"StudentID":3},{"TeacherID":123,"StudentID":2},{"TeacherID":123,"StudentID":4}]

Query

db.collection.aggregate([{$group:{_id:{TeacherID:"$TeacherID",StudentID:"$StudentID"},occurrence:{$sum:1}}},{$sort:{"occurrence":-1}},{"$limit":1},{"$project":{_id:0,StudentID:"$_id.StudentID",TeacherID:"$_id.TeacherID",occurrence:1}}])

Result