【发布时间】:2017-02-08 15:12:16
【问题描述】:
我是 mongoDB 的新手,想知道以下是否可行。
我在同一个 mongo db 表中有两个不同的集合 - 称为 jobs 和 nodes,它们看起来像这样:
function testing() {
nodes.find(function(err, data) {
if (err) {
console.log(err)
} else {
console.log('NODES RETURNED: ', data)
jobs.find(function(err, post) {
if (err) {
console.log(err)
} else {
console.log('JOBS RETURNED: ', post)
}
});
}
});
}
返回以下内容:
JOBS RETURNED: [ { _id: '5899999354d59',
job_url: 'http://222.22.22.22:2222/jobs',
progress: 0,
queue: 0 },
{ _id: '5899b7d054da96',
job_url: 'http://111.11.1.111:1111/jobs',
progress: 0,
queue: 0 } ]
CLUSTER NODESS RETURNED: [ { _id: '58a9a4805c1f',
node_url: 'http://222.22.22.22:2222/nodes',
cpu: 40 },
{ _id: '58999a9a4805c23',
node_url: 'http://111.11.1.111:1111/nodes',
average_cpu: 15 } ]
如您所见,两个不同的集合各有两个文档,它们可以通过 job_url 和 node_url 关联,例如222.22.22.22:2222我能不能根据这个把文档拼接起来,这样最终的结果是这样的:
[ { _id: '58a9a4805c1f',
node_url: 'http://222.22.22.22:2222/nodes',
job_url: 'http://222.22.22.22:2222/jobs',
progress: 0,
queue: 0 },
cpu: 40 },
{ _id: '58999a9a4805c23',
node_url: 'http://111.11.1.111:1111/nodes',
job_url: 'http://111.11.1.111:1111/jobs',
progress: 0,
queue: 0,
average_cpu: 15 }
任何帮助/提示将不胜感激!
【问题讨论】:
-
如果您问是否可以直接在
MongoDB中执行此操作,不可以。但是您可以在Node中进行操作。查看stackoverflow.com/questions/35903850/…
标签: javascript node.js mongodb mongoose mongodb-query