Как подсчитать количество документов в коллекции mongodb
Я хотел бы знать, как посчитать количество документов в коллекции. Я попробовал следовать
var value = collection.count();
&&
var value = collection.find().count()
&&
var value = collection.find().dataSize()
Я всегда получаю метод неопределенным.
Не могли бы вы дать мне знать, какой метод используется для поиска общего количества документов в собрании.
Спасибо
Ganesh
Ответы
Ответ 1
Если вам нужно количество документов в коллекции, используйте метод count
, который возвращает Promise. Вот пример:
let coll = db.collection('collection_name');
coll.count().then((count) => {
console.log(count);
});
Предполагается, что вы используете Mongo 3.
Ответ 2
Перейдите к базе данных, где находится collection
, используя следующую команду:
use databasename;
Затем вызовите функцию count()
в collection
в базе данных.
var value = db.collection.count();
а затем print(value)
или просто value
даст вам количество документов в коллекции с именем collection
.
Refer: http://docs.mongodb.org/v2.2/tutorial/getting-started-with-the-mongo-shell/
Ответ 3
Начиная с версии 4.0.3 вы можете использовать для повышения производительности:
db.collection.countDocuments()
Ответ 4
Просто вы можете использовать
Model.count({email: '[email protected]'}, function (err, count) {
console.log(count);
});
Ответ 5
db.collection.count(function(err,countData){
//you will get the count of number of documents in mongodb collection in the variable
countdata
});
В месте сбора укажите название вашей коллекции mongodb.
Ответ 6
Через Консоль MongoDB вы можете увидеть количество документов в коллекции.
1. Перейдите в консоль mongoDB и введите команду "использовать имя базы данных". Чтобы запустить консоль, перейдите в папку bin, где установлен MongoDB, и нажмите mongo.exe. запустить консоль mongoDB
Например, если база данных myDB, то команда "use myDB"
2. Выполните эту команду db.collection.count() Коллекция как таблица в RDBMS.
например, если ваша коллекция называется myCollection, тогда команда будет db.myCollection.count();
эта команда напечатает размер коллекции в консоли.
Ответ 7
Выполните команды оболочки Mongo в одну строку для лучшего результата.
Чтобы подсчитать все документы в mongodb
var documentCount = 0; db.getCollectionNames().forEach(function(collection) { documentCount++; }); print("Available Documents count: "+ documentCount);
Вывод: Available Documents count: 9
Чтобы получить все результаты документа в коллекции
db.getCollectionNames().forEach(function(collection) { resultCount = db[collection].count(); print("Results count for " + collection + ": "+ resultCount); });
Выход:
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
Чтобы получить все данныеРазмер документов в коллекции
db.getCollectionNames().forEach(function(collection) { size = db[collection].dataSize(); print("dataSize for " + collection + ":"+ size); });
Выход:
dataSize for ADDRESS: 250
dataSize for APPLICATION_DEVELOPER: 950
dataSize for COUNTRY: 10
dataSize for DATABASE_DEVELOPER: 1
dataSize for EMPLOYEE: 4500
dataSize for FULL_STACK_DEVELOPER: 2000
dataSize for PHONE_NUMBER: 110
dataSize for STATE: 0
dataSize for QA_DEVELOPER: 100