2013-04-19 2 views
0

мой запрос, как этоКак получить все коллекции в MongoDB

var db = new Db('NodeZMQ', new Server('192.168.3.110', 27017, { auto_reconnect: true })); 

db.collection('clsSession', function (err, collection) 
{ 
    collection.findOne({ "code": { "$in": ["eventCode"] }, "Venue.allowSales": true, "status": "O", "Venue.companyCode": "companyCode" }, function (err, document) 
    { 
     console.log(document); 
    }); 
}); 

Это дает один документ. На самом деле у него много документов .. Поскольку я использую findOne, это похоже на то, что .. как получить все соответствующие документы? Я использую node.js и mongodb. Я новичок в mongoDB и node.js.

+1

заменить '' findOne' с find' – Sammaye

+0

{DB: {домена: нуль, _events: Null, _maxListeners: 10, Databasename: 'NodeZMQ', SERVERCONFIG: {домена: нуль, _events: нуль, _maxListeners: 10, _callBackStore: [Object], хозяин: '192.168.3.110', порт: 27017, опции: [Object], internalMaster: ложь, подсоединена: ложь, PoolSize: 5, disableDriverBSONSizeCheck: false , я сделал используя find .. это как указано выше, а не сбор , где я поступил не так. – Raj

ответ

2

Использовать collection.find( вместо collection.findOne(. Это возвращает объект курсора, который вы можете использовать для повторения результатов.

Курсор - это объект со многими методами. Те, которые вы найдете наиболее полезными, - это методы .hasNext(), которые проверяют, есть ли еще необработанные документы и .next(), который дает вам следующий документ.

0
var db = new Db('NodeZMQ', new Server('192.168.3.110', 27017, { auto_reconnect: true })); 

db.collection('clsSession', function (err, collection) 
{ 
collection.find({ "code": { "$in": ["eventCode"] }, "Venue.allowSales": true, "status": "O", "Venue.companyCode": "companyCode" }).toArray(function (err, document) 
{ 
    //here document is an array contains all the matching reocrds 
    console.log(document); 
}); 
}); 

Этот пример основан на предположении, что вы используете драйвер mongo-native, но он помогает решить вашу проблему.

Смежные вопросы