Trong bài viết này, các chức năng trong MongoDB sẽ được thảo luận. Ngoài ra, chức năng tổng hợp sẽ được chỉ ra chi tiết
Chúng tôi sẽ giải thích chi tiết các phương pháp khác nhau để đếm và sắp xếp nhiều trường đơn lẻ của Nhóm trong MongoDB
Thao tác trong MongoDB
Các nguyên tắc của giao diện người dùng cho phép người dùng duyệt, tìm kiếm và thay đổi các thành phần của cơ sở dữ liệu được gọi là hoạt động CRUD
Kết nối với máy chủ, truy vấn các tài liệu thích hợp, sửa đổi trước khi gửi dữ liệu trở lại cơ sở dữ liệu để xử lý và thay đổi các thuộc tính cài đặt là cách các tài liệu MongoDB được sửa đổi
CRUD là một quy trình dựa trên dữ liệu được chuẩn hóa bằng cách sử dụng các động từ hành động HTTP. Dưới đây là các hoạt động CRUD và cách sử dụng của chúng
- Thao tác
1 chèn tài liệu mới vào cơ sở dữ liệu MongoDBdb={ "data": [ { "_id": ObjectId["611a99100a3322fc1bd8c38b"], "fname": "Tom", "city": "United States of America", "courses": [ "c#", "asp", "node" ] }, { "_id": ObjectId["611a99340a3322fc1bd8c38c"], "fname": "Harry", "city": "Canada", "courses": [ "python", "asp", "node" ] }, { "_id": ObjectId["611a99510a3322fc1bd8c38d"], "fname": "Mikky", "city": "New Zealand", "courses": [ "python", "asp", "c++" ] }, { "_id": ObjectId["611b3e88a60b5002406571c3"], "fname": "Ron", "city": "United Kingdom", "courses": [ "python", "django", "node" ] } ] }
- Hoạt động
2 truy vấn một tài liệu trong cơ sở dữ liệudb={ "data": [ { "_id": ObjectId["611a99100a3322fc1bd8c38b"], "fname": "Tom", "city": "United States of America", "courses": [ "c#", "asp", "node" ] }, { "_id": ObjectId["611a99340a3322fc1bd8c38c"], "fname": "Harry", "city": "Canada", "courses": [ "python", "asp", "node" ] }, { "_id": ObjectId["611a99510a3322fc1bd8c38d"], "fname": "Mikky", "city": "New Zealand", "courses": [ "python", "asp", "c++" ] }, { "_id": ObjectId["611b3e88a60b5002406571c3"], "fname": "Ron", "city": "United Kingdom", "courses": [ "python", "django", "node" ] } ] }
- Hoạt động
3 sửa đổi các tài liệu hiện có trong cơ sở dữ liệudb={ "data": [ { "_id": ObjectId["611a99100a3322fc1bd8c38b"], "fname": "Tom", "city": "United States of America", "courses": [ "c#", "asp", "node" ] }, { "_id": ObjectId["611a99340a3322fc1bd8c38c"], "fname": "Harry", "city": "Canada", "courses": [ "python", "asp", "node" ] }, { "_id": ObjectId["611a99510a3322fc1bd8c38d"], "fname": "Mikky", "city": "New Zealand", "courses": [ "python", "asp", "c++" ] }, { "_id": ObjectId["611b3e88a60b5002406571c3"], "fname": "Ron", "city": "United Kingdom", "courses": [ "python", "django", "node" ] } ] }
- Thao tác
4 xóa tài liệu trong cơ sở dữ liệudb={ "data": [ { "_id": ObjectId["611a99100a3322fc1bd8c38b"], "fname": "Tom", "city": "United States of America", "courses": [ "c#", "asp", "node" ] }, { "_id": ObjectId["611a99340a3322fc1bd8c38c"], "fname": "Harry", "city": "Canada", "courses": [ "python", "asp", "node" ] }, { "_id": ObjectId["611a99510a3322fc1bd8c38d"], "fname": "Mikky", "city": "New Zealand", "courses": [ "python", "asp", "c++" ] }, { "_id": ObjectId["611b3e88a60b5002406571c3"], "fname": "Ron", "city": "United Kingdom", "courses": [ "python", "django", "node" ] } ] }
hoạt động tổng hợp
Đây là một hoạt động xử lý dữ liệu bao gồm các giai đoạn thực hiện một số hành động trên dữ liệu được nhóm để cung cấp một đầu ra duy nhất. Ba cách để thực hiện thao tác tổng hợp được đưa ra dưới đây
đường ống tổng hợp
Tài liệu được đưa vào một đường ống nhiều giai đoạn kết hợp chúng thành một đầu ra duy nhất. Có một số giai đoạn đối với quy trình tổng hợp MongoDB
Thí dụ
db.collection_name.aggregate[[
//First stage
{ $match: { status: "" } },
//Second stage
{ $group: { _id: "$cust_id", total: { $sum: "$amount" } } },
//Third Stage
{ $sort : {sort_field: -1 }}
]]
Phương pháp tổng hợp mục đích duy nhất
Các phương pháp tổng hợp đơn mục đích đơn giản nhưng thiếu khả năng của một đường dẫn tổng hợp
Quy trình thu nhỏ bản đồ
Bắt đầu với MongoDB 5. 0, quy trình thu nhỏ bản đồ không được dùng nữa. Thay vào đó, hãy sử dụng đường dẫn tổng hợp
MongoDB db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
5 và db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
6
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
Trường
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
7 của mỗi tài liệu trong MongoDB đã được chỉ định một nhóm duy nhất theo giá trị. Sau đó, dữ liệu được xử lý bằng quy trình tổng hợp, mang lại kết quả tính toánMột ví dụ được đưa ra dưới đây. Tại đây, bạn có thể xem cấu hình của cơ sở dữ liệu
Cấu hình này sẽ được sử dụng trong tất cả các ví dụ về mã được cung cấp trong bài viết này
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
Truy vấn cho cơ sở dữ liệu trên được sử dụng là
db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
Kiểm tra liên kết này để thực hiện ở trên để xem hoạt động của đoạn mã này
MongoDB db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
5, db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
6, db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
0
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
1 được sử dụng trong nhóm này theo chủ đề sắp xếp đếm, giống hệt với db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
2 Cộng với db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
3 Nó có thể được sử dụng để sắp xếp và đếm một nhóm theo thứ tự tăng dần và giảm dầnMột số tài liệu được thêm vào bộ sưu tập dữ liệu trong ví dụ dưới đây. Hàm
db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
4 được sử dụng để xem nó có bao nhiêu bản ghiTruy vấn cho
db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
4 sẽ làBạn có thể truy cập hoạt động của truy vấn này từ liên kết này
Bước tiếp theo là
db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
6 mảng db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
7 và đếm số lượng tài liệu được thêm vào mỗi khóa học bằng cách sử dụng hàm db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
1. Truy vấn cho bước này làdb.data.aggregate[[
{
$unwind: "$courses"
},
{
$sortByCount: "$courses"
}
]]
Nhấp vào liên kết này để xem hoạt động của truy vấn này với cấu hình cơ sở dữ liệu ở trên
Đây là cách tiếp cận đơn giản nhất để nhóm, đếm và sắp xếp các mảng MongoDB
MongoDB db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
5 và db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
6 Nhiều trường
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
Bạn có thể sử dụng phương thức
db.data.aggregate[[
{
$unwind: "$courses"
},
{
$sortByCount: "$courses"
}
]]
1 trong MongoDB để đếm nhiều trường. Do đó, db.data.aggregate[[
{
$unwind: "$courses"
},
{
$sortByCount: "$courses"
}
]]
2 được sử dụng để đếm các trườngMột ví dụ được đưa ra dưới đây trong đó dấu thời gian chỉ được sử dụng cho một mục nhập. Trong ví dụ này, một số giấy tờ có thể được lưu trong bộ sưu tập
db.data.aggregate[[
{
$unwind: "$courses"
},
{
$sortByCount: "$courses"
}
]]
3 và bạn có thể sử dụng hàm db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
4 để xác định số lượng tài liệu bạn códb.student.aggregate[[ {$group: {_id: {name:"$name",
timestamp:"$timestamp" }}},
{$count:"timestamp"}
]]
Hoạt động của truy vấn này có thể được truy cập bằng liên kết này
MongoDB db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
5 Ngày và db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
6
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
Bạn có thể sử dụng tổng hợp đếm và đếm một tài liệu có ngày cụ thể khi bạn muốn đếm một tài liệu có ngày cụ thể
Trong ví dụ bên dưới, bạn sẽ học cách tính tổng số tiền bán hàng và số lượng bán hàng cho mỗi ngày trong năm 2021
Bạn có thể thêm các trường id sản phẩm, tên mặt hàng, giá, số lượng và ngày trong bộ sưu tập bán hàng. Hàm
db.data.aggregate[[
{
$group: {
_id: "ObjectId",
count: {
$count: {}
}
}
}
]]
4 có thể lấy tài liệudb=
{
"_id" : 1,
"item" : "abc",
"price" : NumberDecimal["10"],
"quantity" : 2,
"date" : ISODate["2021-03-01T08:00:00Z"]
}
{
"_id" : 2,
"item" : "jkl",
"price" : NumberDecimal["20"],
"quantity" : 1,
"date" : ISODate["2021-03-01T09:00:00Z"]
}
{
"_id" : 3,
"item" : "xyz",
"price" : NumberDecimal["5"],
"quantity" : 10,
"date" : ISODate["2021-03-15T09:00:00Z"]
}
{
"_id" : 4,
"item" : "xyz",
"price" : NumberDecimal["5"],
"quantity" : 20,
"date" : ISODate["2021-04-04T11:21:39.736Z"]
}
{
"_id" : 5,
"item" : "abc",
"price" : NumberDecimal["10"],
"quantity" : 10,
"date" : ISODate["2021-04-04T21:23:13.331Z"]
}
Truy vấn cho cấu hình trên sẽ là
db.date.aggregate[[
{
$match : { "date": { $gte: new ISODate["2021-01-01"], $lt: new ISODate["2015-01-01"] } }
},
{
$group : {
_id : { $dateToString: { format: "%Y-%m-%d", date: "$date" } },
totalSaleAmount: { $sum: { $multiply: [ "$price", "$quantity" ] } },
count: { $sum: 1 }
}
},
{
$sort : { totalSaleAmount: -1 }
}
]]
Bây giờ các truy vấn cho các nhóm trường đơn và nhiều nhóm trường được cung cấp bên dưới bằng cách sử dụng các lệnh
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
6 và FIELD bên dướiMongoDB db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
5 và db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
6 với một trường duy nhất
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db.Request.aggregate[[
{"$group" : {_id:"$source", count:{$sum:1}}}
]]
MongoDB db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
5 và db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
6 với nhiều trường
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db.Request.aggregate[[
{"$group" : {_id:{source:"$source",status:"$status"}, count:{$sum:1}}}
]]
MongoDB db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
5 và db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
6 Với Sắp xếp Sử dụng Trường Có Nhiều Trường
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db.Request.aggregate[[
{"$group" : {_id:{source:"$source",status:"$status"}, count:{$sum:1}}},
{$sort:{"_id.source":1}}
]]
MongoDB db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
5 và db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
6 Với sắp xếp với nhiều trường
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
0Bài viết này đã thảo luận chi tiết về các hoạt động và hoạt động tổng hợp cũng đã được thảo luận. Đầu tiên, các loại chức năng tổng hợp khác nhau đã được thảo luận ngắn gọn với các đoạn mã
Sau đó,
db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
5 và db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
6 đã được thảo luận, bao gồm sắp xếp, tìm kiếm và nhiều trường. Sau đó, db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
5 và db={
"data": [
{
"_id": ObjectId["611a99100a3322fc1bd8c38b"],
"fname": "Tom",
"city": "United States of America",
"courses": [
"c#",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99340a3322fc1bd8c38c"],
"fname": "Harry",
"city": "Canada",
"courses": [
"python",
"asp",
"node"
]
},
{
"_id": ObjectId["611a99510a3322fc1bd8c38d"],
"fname": "Mikky",
"city": "New Zealand",
"courses": [
"python",
"asp",
"c++"
]
},
{
"_id": ObjectId["611b3e88a60b5002406571c3"],
"fname": "Ron",
"city": "United Kingdom",
"courses": [
"python",
"django",
"node"
]
}
]
}
6 đã được thảo luận bằng cách sử dụng các lệnh trường và db=
{
"_id" : 1,
"item" : "abc",
"price" : NumberDecimal["10"],
"quantity" : 2,
"date" : ISODate["2021-03-01T08:00:00Z"]
}
{
"_id" : 2,
"item" : "jkl",
"price" : NumberDecimal["20"],
"quantity" : 1,
"date" : ISODate["2021-03-01T09:00:00Z"]
}
{
"_id" : 3,
"item" : "xyz",
"price" : NumberDecimal["5"],
"quantity" : 10,
"date" : ISODate["2021-03-15T09:00:00Z"]
}
{
"_id" : 4,
"item" : "xyz",
"price" : NumberDecimal["5"],
"quantity" : 20,
"date" : ISODate["2021-04-04T11:21:39.736Z"]
}
{
"_id" : 5,
"item" : "abc",
"price" : NumberDecimal["10"],
"quantity" : 10,
"date" : ISODate["2021-04-04T21:23:13.331Z"]
}
1