【发布时间】:2026-01-22 15:15:01
【问题描述】:
假设我有一个包含如下文档的集合:
{
"_id": ObjectId("507f191e810c19729de860ea"),
"users": [{
"userId": ObjectId("507f1f77bcf86cd799439011"),
"deleted": false,
"updatedAt" ISODate("2013-10-17T20:46:22Z")
}, {
"userId": ObjectId("507f1f71baf40ea8438490fa"),
"deleted": false,
"updatedAt" ISODate("2013-10-17T22:19:10Z")
}]
}
现在,假设我正在查询一个包含特定 userId 的“用户”子文档的文档,该子文档没有被删除 - 所以,查询看起来像:
{"users.userId": ObjectId("507f1f77bcf86cd799439011"), "users.deleted": false}
是否可以通过行中匹配子文档的updatedAt 属性对返回的结果集进行排序?如果没有,是否有更合适的设置方法?我是否应该创建另一个我目前嵌入在 users 键中的内容的集合,然后引用父文档?
【问题讨论】:
标签: mongodb mongodb-query spring-data-mongodb