Để xem thông tin kế hoạch truy vấn, sử dụng explain(). Tạo collection:
> db.demo202.insertOne({"StudentFirstName":"Chris","StudentAge":21});
{ "acknowledged" : true, "insertedId" : ObjectId("5e3c3bd103d395bdc21346e8") }
> db.demo202.insertOne({"StudentFirstName":"David","StudentAge":23});
{ "acknowledged" : true, "insertedId" : ObjectId("5e3c3bd803d395bdc21346e9") }
> db.demo202.insertOne({"StudentFirstName":"Bob","StudentAge":22});
{ "acknowledged" : true, "insertedId" : ObjectId("5e3c3bde03d395bdc21346ea") }
Hiển thị tất cả tài liệu:
> db.demo202.find();
Kết quả:
Truy vấn với explain() để xem kế hoạch thực hiện:
> db.demo202.find({"StudentFirstName":"David"}).explain();Kết quả phân tích kế hoạch truy vấn:
Giải thích:
COLLSCANcó nghĩa là quét toàn bộ collection (collection scan) vì chưa có index trên trường StudentFirstName. Để tối ưu, hãy tạo index:db.demo202.createIndex({"StudentFirstName": 1}).