我正在嘗試extract specific document fields from a mongodb collection(v3.0.8在MongoLab中)。退回的文件必須在日期範圍內。我的目標是從這些文檔中提取特定的字段。我的nodejs代碼,mongodb + nodejs查找並返回文檔中的特定字段
var query = {}, operator1 = {}, operator2 = {}, operator3 = {} ;
operator1.$gte = +startDate;
operator2.$lte = +endDate;
operator3.$ne = 'move';
query['xid'] = 1; // Problem here?
query['date'] = Object.assign(operator1, operator2);
query['type'] = operator3;
console.log(query);
MongoClient.connect(connection, function(err, db) {
if(err){
res.send(err);
} else {
db.collection('jbone')
.find(query)
.toArray(function(err, result){
console.log(err);
res.json(result);
});
};
});
如果我選擇返回日期範圍中的所有字段,則查詢可以正常工作。如果我只選擇字段xid
,我不會收到任何結果。根據the docs,我的query
物體看起來很明智。 console.log(err)
給出:
{ xid: 1,
date: { '$gte': 20160101, '$lte': 20160107 },
type: { '$ne': 'move' } }
null
null
是err
。
任何人都可以幫助我理解我做錯了什麼嗎?
或者指點我到另一個類似的SO問題的答案?
感謝
請檢查'err'在回調函數,希望能給更多信息... – zangw
我更新了'err'對象這隻能說明問題的'null' – Colin
有'XID:1' 'jbone'文件中的相關記錄? – zangw