我想为每个集合的Count()索引,集合名称以特定名称开头。
答案 0 :(得分:1)
请检查Mongo Documentation的这一部分。低于文档的一部分。
列出集合中的所有索引
要返回集合上所有索引的列表,请使用db.collection.getIndexes()方法或类似的驱动程序方法。
例如,要查看人员集合上的所有索引:
db.people.getIndexes()
列出数据库的所有索引
要列出数据库中所有集合的所有索引,可以在mongo shell中使用以下操作:
db.getCollectionNames().forEach(function(collection) {
indexes = db[collection].getIndexes();
print("Indexes for " + collection + ":");
printjson(indexes);
});
要限制,你可以这样做:
db.getCollectionNames().forEach(function(collection) {
if (collection.indexOf("%YOU SEARCH STRING HERE%") > -1){
indexes = db[collection].getIndexes();
print("Indexes for " + collection + ":");
printjson(indexes);
}
});
现在有了计数
db.getCollectionNames().forEach(function(collection) {
if (collection.indexOf("%YOU SEARCH STRING HERE%") > -1){
indexes = db[collection].getIndexes();
print("Indexes for " + collection + ":");
print(indexes.length);
}
});
使用索引名称
db.getCollectionNames().forEach(function(collection) {
if (collection.indexOf("valueblue") > -1){
indexes = db[collection].getIndexes();
print("Indexes for " + collection + ":");
print(indexes.length);
indexes.forEach(function(item){
print(item.name);
});
}
});