以下是我的MongoDB的查询是
{$project:{
firstName: "$firstName",
lastName:"$lastName",
email:"$email",
company :"$organization.name",
RoleName :"$organization.roles.roleName",
matchingRole: { $eq: [ "$organization.roles.orgRoleId","$userOrgMap.roleId" ] }
}
},
{ $match: {matchingRole:true},{ $sort : { firstName : 1} }])
以下是我SpringData MONGO API
aggregation = newAggregation(
project("firstName", "lastName", "email")
.and("organization.name").as("company")
.and("organization.roles.roleName").as("roleName")
我想知道如何使用$ EQ项目使用Spring API进行聚合。我试图把比赛放在项目之外,如下所示。但是查询不会提取任何记录。所以我使用$ eq在项目中进行比较,并将结果分配给一个新的项目属性,并在项目管道之外检查它。
{$比赛:{$ organization.roles.orgRoleId”, “$ userOrgMap.roleId”}
我来了了如下的等价\t 项目( “_ ID”, “登录”, “名字”, “姓氏”, “电子邮件”, “deactivateFlag”, “lastActivity”) \t \t \t \t \t \t。而( “organization.name”)。如( “公司”) \t \t \t \t \t \t。而且( “organization.roles.roleName”)。如( “ROLENAME”) \t \t \t \t \t \t。和(when(“organization.roles.orgRoleId”)。(“userOrgMap.roleId”))。then(true).otherwise(false))。as(“matchingRoleIds”), \t \t \t \t match Criteria.where(“matchingRoleIds”)is(true)), – karmaker
需要测试这个API – karmaker