.distinct()
phương thức là một triển khai cũ hơn là một phương thức tiện lợi bao bọc mapReduce. Đối với bất kỳ điều gì liên quan đến các hoạt động đơn giản, bạn nên sử dụng .aggregate()
.
Vì vậy, tương đương với shell:
db.collection.aggregate([
{ "$match": { "$and": [ { "prop1": "" }, { "prop2": "" } ] } },
{ "$group": { "_id": "$messageId" } }
])
Các tài liệu chỉ được hình thành như một chuỗi các tài liệu BSON. Có nhiều ví dụ khác nhau tại đây .