同时运行两个组操作的MongoDB聚合
鉴于: 一个集合,其中我有一些列,其中两列我希望获得所有使用的值 目前我正在做两个聚合,如下所示(简化) 及 但运行两个聚合感觉像是在浪费资源。是否有一种方法可以同时获得两个分组结果同时运行两个组操作的MongoDB聚合,mongodb,mongodb-aggregation,Mongodb,Mongodb Aggregation,鉴于: 一个集合,其中我有一些列,其中两列我希望获得所有使用的值 目前我正在做两个聚合,如下所示(简化) 及 但运行两个聚合感觉像是在浪费资源。是否有一种方法可以同时获得两个分组结果 我考虑将它们组合起来,然后将其拆分成代码。在操作员的帮助下,您可以这样做 如果您在目标字段上有索引,那么我会选择使用单独的调用,因为这样可以利用这些索引,并可能导致更少的工作负载/更快的执行时间 db[myCollection].distinct('firstCol') 不清楚你在问什么。您想按“第一列”和“第二
我考虑将它们组合起来,然后将其拆分成代码。在操作员的帮助下,您可以这样做 如果您在目标字段上有索引,那么我会选择使用单独的调用,因为这样可以利用这些索引,并可能导致更少的工作负载/更快的执行时间
db[myCollection].distinct('firstCol')
不清楚你在问什么。您想按“第一列”和“第二列”分组吗?您能提供预期结果的示例文档吗?@BoasEnkler这个答案有帮助吗?或者您需要其他东西吗?
db['myCollection'].aggregate(
[{$group: {"_id":"$secondCol"}} ]
);
db['myCollection'].aggregate([
{
$group: {
_id: null,
col1: {
$addToSet: "$firstCol"
},
col2: {
$addToSet: "$secondCol"
}
}
}
])
db[myCollection].distinct('firstCol')