Hướng dẫn mongodb distinct return all fields - mongodb khác biệt trả về tất cả các trường
Tài liệu về nhà → Hướng dẫn sử dụng MongoDB → MongoDB Manual Show
db.collection.distinct(field, query, options)
Quan trọngPhương pháp MongoshTrang này ghi lại một phương thức 0. Đây không phải là tài liệu cho các lệnh cơ sở dữ liệu hoặc trình điều khiển dành riêng cho ngôn ngữ, chẳng hạn như Node.js. Để sử dụng lệnh cơ sở dữ liệu, hãy xem lệnh 1. 0 method. This is not the documentation for database commands or language-specific drivers, such as Node.js. To use the database command, see the
1 command.Đối với trình điều khiển API MongoDB, hãy tham khảo tài liệu trình điều khiển MongoDB dành riêng cho ngôn ngữ.MongoDB driver documentation. Đối với tài liệu Shell Legacy 2, hãy tham khảo tài liệu để phát hành máy chủ MongoDB tương ứng:
Tìm các giá trị riêng biệt cho một trường được chỉ định trên một bộ sưu tập hoặc chế độ xem và trả về kết quả trong một mảng. Phương thức này lấy các tham số sau:
Không bắt buộc. Một tài liệu chỉ định các tùy chọn. Xem các tùy chọn.Ghi chú
Tùy chọn đối chiếu có cú pháp sau: Khi chỉ định đối chiếu, trường 8 là bắt buộc; Tất cả các trường đối chiếu khác là tùy chọn. Để biết mô tả của các trường, xem tài liệu đối chiếu. 6 considers each element of the array as a separate value.Nếu đối chiếu không được xác định nhưng bộ sưu tập có một đối chiếu mặc định (xem 9), thao tác sử dụng đối chiếu được chỉ định cho bộ sưu tập. 6
considers 5, 6, and 5 as separate values.Nếu không có đối chiếu được chỉ định cho bộ sưu tập hoặc cho các hoạt động, MongoDB sử dụng so sánh nhị phân đơn giản được sử dụng trong các phiên bản trước để so sánh chuỗi.Return Distinct Values for an Array Field. Bạn không thể chỉ định nhiều đối chiếu cho một hoạt động. Ví dụ: bạn không thể chỉ định các đối chiếu khác nhau trên mỗi trường hoặc nếu thực hiện tìm thấy với một loại, bạn không thể sử dụng một đối chiếu cho tìm và một đối với loại khác. Trong một cụm bị che khuất, lệnh 1 có thể trả lại các tài liệu mồ côi. 6 operations. See Covered Query for more
information on queries covered by indexes.Nếu giá trị của 3 được chỉ định là một mảng, 6 coi mỗi phần tử của mảng là một giá trị riêng biệt.
Quan trọngCác chỉ mục cũng có thể bao gồm các hoạt động 6. Xem truy vấn được bảo hiểm để biết thêm thông tin về các truy vấn được bao gồm bởi các chỉ mục.Để thực hiện một hoạt động khác biệt trong một giao dịch: Đối với các bộ sưu tập không có vỏ, bạn có thể sử dụng phương thức 6/lệnh 1 cũng như đường ống tổng hợp với giai đoạn 2. 6 disconnects before the operation completes, MongoDB marks
6 for termination using 8Đối với các bộ sưu tập Sharded, bạn không thể sử dụng phương thức 6 hoặc lệnh 1.Để tìm các giá trị riêng biệt cho một bộ sưu tập Sharded, hãy sử dụng đường ống tổng hợp với giai đoạn 2 thay thế. Xem hoạt động khác biệt để biết chi tiết.Trong hầu hết các trường hợp, giao dịch đa tài liệu phát sinh chi phí hiệu suất lớn hơn so với ghi tài liệu đơn lẻ và sự sẵn có của các giao dịch đa tài liệu không nên là một sự thay thế cho thiết kế lược đồ hiệu quả. Đối với nhiều kịch bản, mô hình dữ liệu được chuẩn hóa (tài liệu và mảng nhúng) sẽ tiếp tục tối ưu cho các trường hợp dữ liệu và sử dụng của bạn. Đó là, đối với nhiều kịch bản, mô hình hóa dữ liệu của bạn một cách thích hợp sẽ giảm thiểu nhu cầu cho các giao dịch đa tài liệu.
Để biết các cân nhắc sử dụng giao dịch bổ sung (như giới hạn thời gian chạy và giới hạn kích thước oplog), xem thêm các cân nhắc sản xuất.
Bắt đầu từ MongoDB 4.2, nếu khách hàng phát hành 6 ngắt kết nối trước khi hoạt động hoàn thành, MongoDB đánh dấu 6 để chấm dứt bằng cách sử dụng 8
Bắt đầu từ MongoDB 4.4, để chạy trên một thành viên tập hợp, các hoạt động 1 yêu cầu thành viên phải ở trạng thái 0 hoặc 1. Nếu thành viên ở một trạng thái khác, chẳng hạn như 2, các lỗi hoạt động.
Phương thức trả về mảng sau của các giá trị 9 khác biệt:MẹoXem thêm:Ký hiệu chấm cho thông tin về truy cập các trường trong các tài liệu nhúng Ví dụ sau trả về các giá trị riêng biệt cho trường 3 từ tất cả các tài liệu trong bộ sưu tập 5:
Phương thức trả về mảng sau của các giá trị 3 khác biệt:Để biết thông tin về các trường 6 và mảng, hãy xem phần Hành vi. 6 and array fields, see the
Behavior section.Ví dụ sau trả về các giá trị riêng biệt cho trường 9, được nhúng trong trường 0, từ các tài liệu có 6 bằng 0:
Phương thức trả về mảng sau của các giá trị 9 khác biệt:Đối chiếu cho phép người dùng chỉ định các quy tắc cụ thể về ngôn ngữ để so sánh chuỗi, chẳng hạn như các quy tắc cho Lettercase và Dấu nhấn. Bộ sưu tập 2 có các tài liệu sau:
Hoạt động tổng hợp sau đây bao gồm tùy chọn đối chiếu:
Để biết mô tả về các trường đối chiếu, xem tài liệu đối chiếu. Làm thế nào để tôi có được hồ sơ khác biệt trong MongoDB?Trong MongoDB, phương thức riêng biệt () tìm thấy các giá trị riêng biệt cho một trường đã cho trên một bộ sưu tập duy nhất và trả về kết quả trong một mảng. Phải mất ba tham số đầu tiên là trường để trả về các giá trị riêng biệt và các tham số khác là tùy chọn.the distinct() method finds the distinct values for a given field across a single collection and returns the results in an array. It takes three parameters first one is the field for which to return distinct values and the others are optional.
Chúng ta có thể sử dụng khác biệt với Tìm trong MongoDB không?Cả hai hoạt động tìm thấy và khác biệt đều rất hữu ích khi lấy dữ liệu từ MongoDB.Hoạt động tìm trả về tất cả dữ liệu cùng một lúc hoặc theo truy vấn và trình chiếu.Hoạt động riêng biệt có chức năng đặc biệt là truy xuất các giá trị duy nhất của một trường được chỉ định.. The find operation returns the data all at once or according to the query and projection. The distinct operation has a special functionality of retrieving unique values of a specified field.
Làm cách nào để làm cho một lĩnh vực độc đáo trong MongoDB?Để tạo một chỉ mục duy nhất, hãy sử dụng phương thức db.Collection.CreateIndex () với tùy chọn duy nhất được đặt thành true.use the db. collection. createIndex() method with the unique option set to true .
Làm thế nào để tôi chạy một truy vấn riêng biệt trong La bàn MongoDB?Bạn có thể làm điều này thông qua khung tổng hợp trong la bàn, sử dụng $ ủ rũ và $ group.$ Unfind được thực hiện để tạo ra một tài liệu duy nhất cho mỗi phần tử trong mảng đích, cho phép toán tử $ Addtoset trong giai đoạn nhóm $ để sau đó nắm bắt các thể loại như các yếu tố riêng biệt.via aggregation framework in Compass, using $unwind and $group. The $unwind is performed to create a unique document for each element in the target array, which enables the $addToSet operator in the $group stage to then capture the genres as distinct elements. |