Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MongoDB

Lấy giá trị duy nhất từ mảng trong tài liệu MongoDB

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.