是否可以在具有最大日期的两个字段上使用标准获取所有文档

问题描述 投票:0回答:2

我在“合并”集合中有文档,平面结构和大量“字段”(超过100个)。

在这些字段中有'partNumber'和'date',它们不是唯一的。

我是mongo的新手,我需要检索所有文档(及其所有字段,无需在项目阶段明确列出),但只选择具有给定partNumber最新日期的记录(这对于所有partNumbers )。这可能在mongoDB 3.2中吗?什么是查询?

提前谢谢了。

database mongodb filter criteria
2个回答
0
投票

是的,有可能,你想知道MongoDB查询这个东西吗?或者您使用的是任何后端编程语言吗?


0
投票

在对复杂的聚合查询进行挣扎之后,我找到了一个带有一些代码且只有2个查询的KISS解决方案: - 1个聚合查询来检索夫妻partNumber,最近的日期

db.getCollection('merge').aggregate(
   [
     { $group : { _id : "$partNumber", maxdate: { $max: "$date" } } }
   ]
)
  • 然后在python中,使用从上一步解析的所有元组的单个查找查询(partNumber = partNumber1和date = date1)或(partNumber = partNumber2和date = date 2)或...

执行速度非常快。

© www.soinside.com 2019 - 2024. All rights reserved.