糟糕的方式(直接工作):
Database.ChangeTracker.QueryTrackingBehavior = Microsoft.Data.Entity.QueryTrackingBehavior.NoTracking;
我想要这样的事情:
user =
yield users.findOne({
'profile.personal.email': email
});
if(user === null) {
user =
yield users.findOne({
'profile.company.email': email
});
}
以上返回null。我想要求上面两个字段中的任何一个的第一场比赛。我非常确定mongodb可以做到这一点。我希望或不是和。因此,如果找到任何一封电子邮件,它应该返回文档。
我使用Koajs和co-monk模块。如果需要,我可以使用聚合。
答案 0 :(得分:1)
记住$or
运营商:
user =
yield users.findOne({
$or: [{
'profile.personal.email': email
}, {
'profile.company.email': email
}]
});