Noob在这里。我需要获得一份报告,该报告是来自两个数据库的两个集合的汇总。试图绕过问题,但失败了。我找到的示例是聚合来自同一数据库的两个集合。
收藏1
SweetsResults = client.ItemsDB.sweets
收集糖果:_id,类型,颜色
Collection2
SearchesResults = client.LogsDB.searches
集合搜索:_id,时间戳,类型,颜色
我需要的报告将列出糖果收集中所有列出颜色的“糖果”类型的所有糖果,以及每行,“糖果”+颜色的任何可用组合的搜索数量(计数) 。
任何帮助将不胜感激。
感谢。
答案 0 :(得分:1)
您可以在mongo shell中使用以下脚本。
为每种类型获取不同的颜色,然后为每种类型和颜色组合计数。
var itemsdb = db.getSiblingDB('ItemsDB');
var logsdb = db.getSiblingDB('LogsDB');
var docs = [];
itemsdb.getCollection("sweets").aggregate([
{$match:{"type":"candy"}},
{$group: {_id:{type:"$type", color:"$color"}},
{$project: {_id:0, type:"$_id.type", color:"$_id.color"}}
]).forEach(function(doc){
doc.count = logsdb.getCollection("searches").count({ "type":"candy","color":doc.color});
docs.push(doc)
});
答案 1 :(得分:1)
与@Veeram answer完全相同,但使用python:
mewtwo-show_hotels__*checkbox*