Nhóm trong mongodb
Tập hợp là một khung tổng hợp dữ liệu của MongoDB. Tập hợp được xây dựng dựa trên mô hình xử lý dữ liệu bên dưới định dạng đường ống. Aggregation pipeline bao gồm nhiều giai đoạn. Trong mỗi giai đoạn, chúng ta sử dụng một toán tử tổng hợp để biến đổi dữ liệu của các tài liệu đầu vào. Tài liệu đầu ra của giai đoạn phía trước sẽ là tài liệu đầu vào của giai đoạn ngay sau. Toán tử tổng hợp có thể được sử dụng nhiều lần trong đường ống, ngoại trừ Show Điểm mạnh của aggregation framework là
MongoDB cung cấp phương thức cú pháp 1 2 db. Bộ sưu tập người dùng. tổng hợp( [ { & . lt;stage 1> }, { <stage 2> }, .. . , { <stage N> } ], { <options> } );
in which
… Để minh họa cho các nhà điều hành, mình sẽ sử dụng 2 bộ sưu tập là Bộ sưu tập 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 /* 1 */ { "_id" . ObjectId("5dfed89743e6fed50628907c"), "cust_id" . "A123", "sản phẩm" . [ "quả táo", "chanh" ], "số tiền" . 500, "trạng thái" . "hoàn thành" }
/* 2 */ { "_id" . ObjectId("5dfed8a643e6fed50628908a"), "cust_id" . "B456", "sản phẩm" . [ "chanh" ], "số tiền" . 100, "trạng thái" . "đang xử lý" }
/* 3 */ { "_id" . ObjectId("5dfed8b043e6fed50628908f"), "cust_id" . "B456", "sản phẩm" . [ "quả táo", "cam" ], "số tiền" . 300, "trạng thái" . "hoàn thành" }
/* 4 */ { "_id" . ObjectId("5dfed8b943e6fed506289094"), "cust_id" . "C789", "sản phẩm" . [ "quả táo", "chanh", "cam" ], "số tiền" . 800, "trạng thái" . "hoàn thành" }
/* 5 */ { "_id" . ObjectId("5dfed8c343e6fed506289097"), "cust_id" . "A123", "sản phẩm" . [ "quả táo" ], "số tiền" . 250, "trạng thái" . "hoàn thành" }
Bộ sưu tập 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 /* 1 */ { "_id". "A123", "tên". "Alice" }
/* 2 */ { "_id". "B456", "tên". "Bob" }
/* 3 */ { "_id". "C789", "tên". "Carol" }
2. ________số 8
cú pháp 1 2 { $khớp. { <truy vấn> } }
Cú pháp truy vấn của Ví dụ Lọc đơn hàng của khách hàng có ID là A123 1 2 3 4 5 6 7 8 db. đơn đặt hàng. tổng hợp([ { $trận đấu. { cust_id. "A123" } } ])
=> Kết quả 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 /* 1 */ { "_id" . ObjectId("5dfed89743e6fed50628907c"), "cust_id" . "A123", "sản phẩm" . [ "quả táo", "chanh" ], "số tiền" . 500, "trạng thái" . "hoàn thành" }
/* 2 */ { "_id" . ObjectId("5dfed8c343e6fed506289097"), "cust_id" . "A123", "sản phẩm" . [ "quả táo" ], "số tiền" . 250, "trạng thái" . "hoàn thành" }
3. |