Computer >> Máy Tính >  >> Lập trình >> MongoDB

Mảng chỉ mục MongoDB như thế nào?

MongoDB lập chỉ mục mọi giá trị của một mảng để bạn có thể truy vấn các phần tử đơn lẻ.

Để hiểu khái niệm, chúng ta hãy tạo một bộ sưu tập với tài liệu. Truy vấn để tạo một bộ sưu tập với một tài liệu như sau -

> db.indexingForArrayElementDemo.insertOne ({"StudentFavouriteSubject":["MongoDB", "MySQL"]}); {"Recog":true, "insertId":ObjectId ("5c8acdca6cea1f28b7aa0816")} 
 Hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find (). Truy vấn như sau - 

> db.indexingForArrayElementDemo.find (). pretty (); 

Sau đây là kết quả -

 {"_id":ObjectId ("5c8acdca6cea1f28b7aa0816"), "StudentFavouriteSubject":["MongoDB", "MySQL"]} 

Đây là truy vấn mà mảng chỉ mục MongoDB &trừ;

> db.indexingForArrayElementDemo.ensureIndex ({"StudentFavouriteSubject":1}); 

Sau đây là kết quả -

 {"createdCollectionAutomatically":false, "numIndexesBefore":1, "numIndexesAfter":2, "ok":1} 

Đây là truy vấn cho các phần tử mảng riêng lẻ -

> db.indexingForArrayElementDemo.find ({"StudentFavouriteSubject":"MongoDB"}). pretty (); 

Sau đây là kết quả -

 {"_id":ObjectId ("5c8acdca6cea1f28b7aa0816"), "StudentFavouriteSubject":["MongoDB", "MySQL"]} 

Hãy để chúng tôi xem một ví dụ khác. Truy vấn như sau -

> db.indexingForArrayElementDemo.find ({"StudentFavouriteSubject":"MySQL"}). pretty (); 

Sau đây là kết quả -

 {"_id":ObjectId ("5c8acdca6cea1f28b7aa0816"), "StudentFavouriteSubject":["MongoDB", "MySQL"]}