我在猫鼬中有一个查找查询,但是需要,我现在想使用聚合, 搜索后,我发现elemMatch不适用于聚合,我必须使用过滤器, 有没有一种解决方案,可以用过滤器替换我的查询
我在查询中使用正则表达式:
我的查询
mymodel.find({u_info: {$elemMatch: {ai_id: 1234, response:{ $regex: new RegExp("^myString" , "i") }}}}
模型
var InfosSchema = new mongoose.Schema({
u_info:[
{
ai_id:{type: Schema.Types.ObjectId, ref: 'wt_ai_infos'},
question:String,
response:String
}]},
return conn.model('wt_infos', InfosSchema);
};
我的收藏集
[
{
"_id": ObjectId("5aca2ac25c1d8adeb4a2dab0"),
"u_info": [
{
"response": "false",
"question": "question 1",
"ai_id": 254
},
{
"response": "myString",
"question": "question 2",
"ai_id": 1234
}
]
}
]