mongodb - 获取最后一个文档并过滤嵌套数组
问题描述
第一次玩 MongoDB(和 pymongo),我有以下文档。
我正在尝试进行以下查询:
- 获取前 1 个条目,按
time_added
降序排列 - 从该文档子集(我们称之为
entries.stocks
)中,获取价格小于某个balance
值的股票 - 按该顺序按数量和价格排序。
从我用谷歌搜索的内容来看,这似乎可以通过聚合来完成,但我只设法完成了第一步:
db.entries.find().sort('date_added', -1).limit(1)
文件:
[
{
"_id": {
"$oid": "5fcd2582a7a12288df9a6bf3"
},
"stocks": [
{
"name": "stock_name",
"volume": 73,
"price": 135
},
{
"name": "stock_name",
"volume": 44,
"price": 324
}
],
"date_added": {
"$date": "2020-12-06T18:40:02.000Z"
}
},
{
"_id": {
"$oid": "5fcd2582a7a12288df9a6ad0"
},
"stocks": [
{
"name": "stock_name",
"volume": 342,
"price": 43
},
{
"name": "stock_name",
"volume": 544,
"price": 66
}
],
"date_added": {
"$date": "2020-12-05T18:40:02.000Z"
}
}
]
解决方案
推荐阅读
- sql - 如何在 Oracle 连接中仅查询非系统数据库?
- javascript - 如何在两个不同的地方重用容器逻辑
- php - jQuery如何在选项菜单中附加以指定项目
- ios - 如何防止在 ios 上自动初始化 Firebase?
- javascript - 拉出动态对象名称
- python-3.x - 基于用户购票数量设计电影推荐系统
- outlook-addin - Outlook 加载项中的 getUserMedia()
- javascript - 如何将 puppeteer 用于 cachewarmer?
- python - 将内容写入创建的 txt 文件
- java - Firebase 查询检索信息 3 级深