我有一个文档集合,每个文档都包含一个嵌套的对象数组。
{
"id": "309324739",
"debters": [
{
"user": {
"name": "John Doe",
"internal": true
},
"debt": 1463,
},
{
"user": {
"name": "Alex Tree",
"internal": false
},
"debt": 53443,
},
}
我要做的是返回通过 id 查找文档,然后在具有 false 的 debters 列表中查找标记?
我尝试了以下查询...
Debters findByIdAndDebters_User_InternalIsFalse(@Param("id") String id,);
但是我收到一条错误消息,说它可以找到“内部”属性。我在做什么错,如何使用这个神奇的mongo存储库查询遍历数组?
答案 0 :(得分:0)
您需要编写类似于以下内容的本地查询
@Query("{'debters.user.internal':false,'_id':''}")
Debters findByIdAndDebtersUserInternalIsFalse(@Param("id") String id,);