Node JS Cursor具有不同的集合数据

时间:2018-03-13 09:14:00

标签: node.js mongodb mongodb-query

在这里,我有一个示例代码,从一个集合中获取数据并将其放入游标,并再次从另一个集合中获取数据,我想要在下面的游标中使用我要推送的数据。如何使用它。我得到了空白[]回复。

{
    let f1= [];
                let f2 = [];
                let f3 = [];
         var cursor = collection.find({'timestamp':{"$gte":queryObject.fromdate,"$lt" : queryObject.todate}}).sort({"timestamp":1});

         var collectionname  = db.collection("col2");
         collectionname.find({}).each(function(err, doc) {
                for(let i in doc.Data)
                {
                    for(let j in doc.Data[i].position)
                    {
                        for(let k in doc.Data[i].position[j].status)
                    {
                        f1.push(doc.Data[i].position[j].pcode);
                        f2.push(doc.Data[i].position[j].status[k].value);
                        f3.push(doc.Data[i].position[j].status[k].code);                 
         cursor.each(function(err, doc) {
                if(doc!=null){
                    if(index==0){
                    }
                    var temp = {};
                    var obj = doc.data[0];  
                    var Count = 0;
                    for(var i=0;i<temp.length;i++){
                        if(obj[temp[i]]!=undefined){
                        if(obj[temp[i]]==f2 && temp[i]==f1){
                        temp[temp[i]] = f3;
                        temp.timestamp = obj.timestamp;
                        Count++;
                        }
                        else{
                                temp[temp[i]] = obj[temp[i]];
                                Count++;
                                temp.timestamp = obj.timestamp;
                        }           
                        }   
                    }
                }
                else
                {
                        res.writeHead(200, {
                    'Content-Type': 'application/json'
                  });
                var resultData = {"data":resultset,"success":true};
                res.write(JSON.stringify(resultData));
                  res.end();    
                }
        }); 

    }}} 

     });
} 

编辑:数据来自col2,现在我想在条件下与col1匹配,能够迭代col1 temp但是从col2 f1,f2,f3数据无法迭代它始终是第一个。 如何存档。请帮助相同。 Col2的样本json:

{
    "_id" : ObjectId("59d47780d882f82f656c7978"),
    "code" : "1",
    "Data" : [
        {
            "pcode" : "AA",
            "Name" : "x",
        },
        {
            "pcode" : "BB",
            "Name" : "y",
            "position" : [
                {
                    "pcode" : "BB",
                    "position" : "15",
                    "status" : [
                        {
                            "code" : "0",
                            "value" : "OFF"
                        },
                        {
                            "code" : "1",
                            "value" : "ON"
                        }
                    ]
                },
                {
                    "pcode" : "CC",
                    "position" : "14",
                    "status" : [
                        {
                            "code" : "0",
                            "value" : "YES"
                        },
                        {
                            "code" : "1",
                            "value" : "NO"
                        }
                    ]
                },
    ],
    "type" : "1122",

}

Col1的样本json:

{
    "_id" : ObjectId("5a9c3b504fd78e675e619d61"),
    "data" : [
        {
            "BB" : "OFF",
            "CC" : "YES",
            "type" : "1122"
        }
    ]
}

0 个答案:

没有答案