Phương thức distinct() cũng hoạt động trên trường kiểu mảng - trả về các giá trị duy nhất xuất hiện trong mảng của tất cả tài liệu. Tạo collection:
> db.demo588.insertOne({"CountryName":["US","AUS","UK","US","UK","AUS"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5e92bbd2fd2d90c177b5bccb") }
Hiển thị dữ liệu (mảng có trùng):
> db.demo588.find().pretty();
Truy vấn distinct trên trường mảng:
> db.demo588.distinct("CountryName");Kết quả (mảng giá trị duy nhất, đã sắp xếp):
[ "AUS", "UK", "US" ]Đặc điểm:
distinct()trên mảng "làm phẳng" (flatten) - xem xét từng phần tử của mảng trong mọi tài liệu, gom tất cả giá trị duy nhất. Rất hữu ích cho tag, category, enum values.