Làm thế nào để bạn giải thích một truy vấn riêng biệt trong MongoDB?Làm thế nào để bạn giải thích một truy vấn riêng biệt trong MongoDB?
db.test3.distinct("id", { key:"value"}).explain()
lỗi với:
explain is not a function (shell)
Làm thế nào để bạn giải thích một truy vấn riêng biệt trong MongoDB?Làm thế nào để bạn giải thích một truy vấn riêng biệt trong MongoDB?
db.test3.distinct("id", { key:"value"}).explain()
lỗi với:
explain is not a function (shell)
Bạn không thể sử dụng giải thích với biệt theo MongoDB này jira ticket. Thay vào đó bạn có thể sử dụng runCommand
và xác minh các số liệu thống kê, đó là kinda giống với explain()
db.runCommand({ distinct: 'test3',key:'id',query:{key:"value"}})
Trong Test3 truy vấn trên là tên bộ sưu tập, chính là một tên trường bạn muốn áp dụng riêng biệt và cuối cùng nếu bạn muốn chỉ định bất kỳ bộ lọc sử dụng truy vấn.
Kiểm tra các mẫu
> db.runCommand({ distinct: 'items',key:'name',query:{offered:true}})
{
"values" : [
"test flat",
"Another aston martin",
"super luxury villa",
"Aston martin vanquish y for sale",
"Super car",
"Test item",
"another sports car",
"super car"
],
"stats" : {
"n" : 8,
"nscanned" : 10,
"nscannedObjects" : 10,
"timems" : 45,
"cursor" : "BasicCursor"
},
"ok" : 1
}
> db.runCommand({ distinct: 'items',key:'name',query:{offered:false}})
{
"values" : [
"yamaha",
"Test item"
],
"stats" : {
"n" : 2,
"nscanned" : 10,
"nscannedObjects" : 10,
"timems" : 0,
"cursor" : "BasicCursor"
},
"ok" : 1
}
Tính đến Mongo 3.2, bạn có thể làm:
db.test3.explain().distinct("id", {key: "value"})
https://docs.mongodb.org/manual/reference/method/db.collection.explain/
Cảm ơn! Điều này làm việc tuyệt vời cho tôi. –
Tôi không thể xem số liệu thống kê, tôi chỉ lấy lại các giá trị và trả lời là ok. – genericuser
@RyanHoffman: Nên được đánh dấu là câu trả lời được chấp nhận, IMHO. Cảm ơn! –