我想知道如何计算集合中的文档数量。我尝试了以下
var value = collection.count();
&&
var value = collection.find().count()
&&
var value = collection.find().dataSize()
我总是得到方法未定义。
您能告诉我在收集中查找总文件的方法是什么。
由于 内甚
答案 0 :(得分:13)
使用以下命令遍历您collection
所在的数据库:
use databasename;
然后调用数据库中count()
的{{1}}函数。
collection
然后var value = db.collection.count();
或简称print(value)
会为您提供名为value
的集合中的文档计数。
参考:http://docs.mongodb.org/v2.2/tutorial/getting-started-with-the-mongo-shell/
答案 1 :(得分:8)
如果您想要集合中的文档数量,请使用返回Promise的count
方法。这是一个例子:
let coll = db.collection('collection_name');
coll.count().then((count) => {
console.log(count);
});
这假设你使用的是Mongo 3。
答案 2 :(得分:3)
只需使用
即可 Model.count({email: 'xyz@gmail.com'}, function (err, count) {
console.log(count);
});
答案 3 :(得分:2)
自 v4.0.3 起,您可以使用它来获得更好的性能:
db.collection.countDocuments()
答案 4 :(得分:2)
单行执行Mongo shell命令以获得更好的结果。
获取mongodb中所有文档的数量
var documentCount = 0; db.getCollectionNames()。forEach(function(collection){documentCount ++;}); print(“ Available Documents count:” + documentCount);
输出: Private Sub KeyUp_Event(sender As Object, e As KeyEventArgs) Handles Me.KeyUp
'The barcode reader works like a keyboard, each character triggers the KeyUp event
' A static variable concatenates each character until it encounters character 13
'
Static Barcode As String
If e.KeyValue = 13 Then
do_something(Barcode)
Barcode = ""
Exit Sub
End If
Barcode &= Chr(e.KeyValue)
End Sub
要获取集合中所有文档结果的数量
db.getCollectionNames()。forEach(function(collection){resultCount = db [collection] .count(); print(“” + collection +“的结果计数:” + resultCount);});
输出:
Available Documents count: 9
获取集合中文档的所有数据大小
db.getCollectionNames()。forEach(function(collection){size = db [collection] .dataSize(); print(“ dataSize for” + collection +“:” + size);});
输出:
Results count for ADDRESS: 250
Results count for APPLICATION_DEVELOPER: 950
Results count for COUNTRY: 10
Results count for DATABASE_DEVELOPER: 1
Results count for EMPLOYEE: 4500
Results count for FULL_STACK_DEVELOPER: 2000
Results count for PHONE_NUMBER: 110
Results count for STATE: 0
Results count for QA_DEVELOPER: 100
答案 5 :(得分:0)
db.collection.count(function(err,countData){
//you will get the count of number of documents in mongodb collection in the variable
countdata
});
代替收集,提供你的mongodb集合名称
答案 6 :(得分:0)
通过MongoDB控制台,您可以查看集合中的文档数。
1。转到mongoDB控制台并发出命令“ use databasename”。 要启动控制台,请转到安装MongoDB的bin文件夹,然后单击mongo.exe。 启动mongoDB控制台 例如,如果数据库是myDB,则命令为“ 使用myDB ”
2。执行此命令db.collection.count() 集合类似于RDBMS中的表。 例如,如果您的集合名称为myCollection,则命令为 db.myCollection.count();
此命令将在控制台中打印集合的大小。
答案 7 :(得分:0)
db.collection('collection-name').count()
现在已弃用。
现在应该使用countDocuments()
和estimatedDocumentCount()
代替count()。
这是一个示例:
`db.collection('collection-name').countDocuments().then((docs) =>{
console.log('Number of documents are', docs);
};`
要了解更多信息,请阅读文档:
https://docs.mongodb.com/manual/reference/method/db.collection.countDocuments/
https://docs.mongodb.com/manual/reference/method/db.collection.estimatedDocumentCount/