.distinct()
metoden er en ældre implementering, der mere er en bekvemmelighedsmetode, der indpakker mapReduce. For noget mere involveret end simple operationer bør du bruge .aggregate()
.
Så shell-ækvivalenten:
db.collection.aggregate([
{ "$match": { "$and": [ { "prop1": "" }, { "prop2": "" } ] } },
{ "$group": { "_id": "$messageId" } }
])
Dokumenterne er blot dannet som en kæde af BSON-dokumenter. Der er forskellige eksempler her .