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

Làm cách nào để buộc MongoDB sử dụng BasicCursor thay vì chỉ mục?

Để tránh sử dụng chỉ mục, hãy sử dụng gợi ý () trong MongoDB. Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.demo31.createIndex ({"StudentFirstName":1}); {"createCollectionAutomatically":true, "numIndexesBefore":1, "numIndexesAfter":2, "ok":1}> db.demo31.insertOne ({"StudentFirstName":"John"}); {"inherit":true, "insertId":ObjectId ("5e174f8fcfb11e5c34d898c1")}> db.demo31.insertOne ({"StudentFirstName":"Jace"}); {" đã xác nhận ":true," insertId ":ObjectId (" 5e174f97cfb11e5c34d898c2 ")}> db.demo31.insertOne ({" StudentFirstName ":" Chris "}); {" inherit ":true," insertId ":ObjectId (" 5e174f9ccfb118c3c334ccfb11e5c3c334fb118c3c334 " )}> db.demo31.insertOne ({"StudentFirstName":"James"}); {"nition ":true," insertId ":ObjectId (" 5e174fa0cfb11e5c34d898c4 ")} 

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 () -

> db.demo31.find (); 

Điều này sẽ tạo ra kết quả sau -

 {"_id":ObjectId ("5e174f8fcfb11e5c34d898c1"), "StudentFirstName":"John"} {"_id":ObjectId ("5e174f97cfb11e5c34d898c2"), "StudentFirstName":"_id"} "5e174f9ccfb11e5c34d898c3"), "StudentFirstName":"Chris"} {"_id":ObjectId ("5e174fa0cfb11e5c34d898c4"), "StudentFirstName":"James"} 

Sau đây là truy vấn để buộc MongoDB sử dụng BasicCursor thay vì chỉ mục -

> db.demo31.find ({"StudentFirstName":{$ regex:'^ Ja'}}). hint ({$ natural:1}); 

Điều này sẽ tạo ra kết quả sau -

 {"_id":ObjectId ("5e174f97cfb11e5c34d898c2"), "StudentFirstName":"Jace"} {"_id":ObjectId ("5e174fa0cfb11e5c34d898c4"), "StudentFirstName":"James"}