如何在 JAVA 中使用 MongoDB 聚合 GroupOperation 方法
How to use MongoDB Aggegation GroupOperation Method in JAVA
我有一个查询并根据条件使用计数,而在 java 我正在使用聚合 GroupOperation 对象。那么如何在JAVA中写出这条语句呢?
示例查询:
{
$group: {
_id: {
"categoryCode": "$categoryCode",
"categoryName": "$categoryName"
},
"cat_count": {
$sum: {
$cond: [{ $eq: ["$cat_type", "A"] }, 1, 0]
}
}
}
}
您可以使用 org.springframework.data.mongodb.core.aggregation
包中的聚合 类 来编写此查询。
ConditionalOperators.Cond cond = ConditionalOperators.Cond.when(ComparisonOperators.Eq.valueOf("$cat_type").equalToValue("A"))
.then(1)
.otherwise(0);
GroupOperation groupOperation = Aggregation.group("categoryCode", "categoryName").sum(cond).as("cat_count");
现在使用这个 groupOperation 和 mongotemplate 来执行查询。
我有一个查询并根据条件使用计数,而在 java 我正在使用聚合 GroupOperation 对象。那么如何在JAVA中写出这条语句呢? 示例查询:
{
$group: {
_id: {
"categoryCode": "$categoryCode",
"categoryName": "$categoryName"
},
"cat_count": {
$sum: {
$cond: [{ $eq: ["$cat_type", "A"] }, 1, 0]
}
}
}
}
您可以使用 org.springframework.data.mongodb.core.aggregation
包中的聚合 类 来编写此查询。
ConditionalOperators.Cond cond = ConditionalOperators.Cond.when(ComparisonOperators.Eq.valueOf("$cat_type").equalToValue("A"))
.then(1)
.otherwise(0);
GroupOperation groupOperation = Aggregation.group("categoryCode", "categoryName").sum(cond).as("cat_count");
现在使用这个 groupOperation 和 mongotemplate 来执行查询。