Chúng tôi đã học cách sử dụng chỉ mục/khóa trên bộ sưu tập của mình và cách tạo chỉ mục. Bây giờ, trong video hướng dẫn này, chúng ta hãy tìm hiểu cách lấy chỉ mục trên từng bộ sưu tập và cách bỏ/xóa/xóa chỉ mục mà chúng ta đã tạo
Đọc liên quan. tạo chỉ mục. MongoDB
nhiệt độ. Tên cơ sở dữ liệu
không, cái khác. tên bộ sưu tập
Chúng tôi có 10 triệu tài liệu trong bộ sưu tập “không”
tài liệu mẫu
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
> use temp switched to db temp > show collections no system.indexes > db.no.find[{"student_id": {$lt: 3}}].pretty[] { "_id" : ObjectId["53c9020abcdd1ea7fb833cda"], "student_id" : 0, "name" : "Satish" } { "_id" : ObjectId["53c9020abcdd1ea7fb833cdb"], "student_id" : 1, "name" : "Satish" } { "_id" : ObjectId["53c9020abcdd1ea7fb833cdc"], "student_id" : 2, "name" : "Satish" }
> sử dụng tạm thời chuyển sang db temp > hiển thị bộ sưu tập không có hệ thống. chỉ mục > db. không. tìm [{"student_id". {$lt. 3}}]. xinh[] { "_id". ObjectId["53c9020abcdd1ea7fb833cda"], "student_id". 0, "tên". "Satish" } { "_id". ObjectId["53c9020abcdd1ea7fb833cdb"], "student_id". 1, "tên". "Satish" } { "_id". ObjectId["53c9020abcdd1ea7fb833cdc"], "student_id". 2, "tên". "Satish" }
Tìm nạp Chỉ mục và Thả/xóa Chỉ mục. MongoDB
Chúng ta sẽ xem xét “hệ thống. bộ sưu tập chỉ mục
1 2 3 4 5
> db.system.indexes.find[] { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "temp.no" } { "v" : 1, "key" : { "student_id" : 1 }, "name" : "student_id_1", "ns" : "temp.no" }
> db. hệ thống. chỉ số. tìm[] { "v". 1, "chìa khóa". { "_Tôi". 1 }, "tên". "_id_", "ns". "nhiệt độ. no" } { "v". 1, "chìa khóa". { "thẻ học sinh". 1 }, "tên". "sinh viên_id_1", "ns". "nhiệt độ. không" }
Tạo bộ sưu tập “khác”
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
> db.another.insert[{"name": "Satish", "age": 27}]; WriteResult[{ "nInserted" : 1 }] > show collections another no system.indexes > db.system.indexes.find[] { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "temp.no" } { "v" : 1, "key" : { "student_id" : 1 }, "name" : "student_id_1", "ns" : "temp.no" } { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "temp.another" }
> db. khác. điền tên". "Satish", "tuổi tác". 27}]; . 1 }] > hiển thị bộ sưu tập khác không có hệ thống. chỉ mục > db. hệ thống. chỉ số. tìm[] { "v". 1, "chìa khóa". { "_Tôi". 1 }, "tên". "_id_", "ns". "nhiệt độ. no" } { "v". 1, "chìa khóa". { "thẻ học sinh". 1 }, "tên". "sinh viên_id_1", "ns". "nhiệt độ. no" } { "v". 1, "chìa khóa". { "_Tôi". 1 }, "tên". "_id_", "ns". "nhiệt độ. khác" }
Sau khi tạo bộ sưu tập “another”, công cụ mongoDB sẽ tạo khóa mặc định trên trường “_id” của nó. Và “hệ thống. chỉ mục” hiển thị tất cả các khóa có trong cơ sở dữ liệu cho tất cả các bộ sưu tập mà nó có. Điều này có thể trở nên lộn xộn nếu chúng tôi có số lượng lớn các bộ sưu tập - điều mà chúng tôi thực hiện trong các dự án thậm chí còn lớn hơn một chút
Để lấy chỉ mục trên bộ sưu tập cá nhân
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
> db.another.getIndexes[] [ { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "temp.another" } ] > db.no.getIndexes[] [ { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "temp.no" }, { "v" : 1, "key" : { "student_id" : 1 }, "name" : "student_id_1", "ns" : "temp.no" } ]
> db. khác. getIndexes[] [ { "v". 1, "chìa khóa". { "_Tôi". 1 }, "tên". "_id_", "ns". "nhiệt độ. khác" } ] > db. không. getIndexes[] [ { "v". 1, "chìa khóa". { "_Tôi". 1 }, "tên". "_id_", "ns". "nhiệt độ. no" }, { "v". 1, "chìa khóa". { "thẻ học sinh". 1 }, "tên". "sinh viên_id_1", "ns". "nhiệt độ. không" } ]
Chúng ta có thể sử dụng phương thức getIndex[] để tìm nạp hoặc lấy các chỉ mục/khóa có trên từng bộ sưu tập
Xóa/xóa/xóa – chỉ mục/khóa
1 2 3 4 5 6 7 8 9 10 11 12 13 14
> db.no.dropIndex[{"student_id": 1}]; { "nIndexesWas" : 2, "ok" : 1 } > db.no.getIndexes[] [ { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "temp.no" } ]
> db. không. dropIndex[{"student_id". 1}]; . 2, "được". 1 } > db. không. getIndexes[] [ { "v". 1, "chìa khóa". { "_Tôi". 1 }, "tên". "_id_", "ns". "nhiệt độ. không" } ]
sử dụng phương thức dropIndex[] và truyền vào đối tượng chỉ mục tương tự như đối tượng được sử dụng khi tạo chỉ mục. Điều này sẽ làm giảm chỉ số