1
我有这种类型的文件到我的集合中。我存储了许多有版本的组件。MongoDB - Jongo - 聚合字段的最大值
{
"_id" : "compagny/component_name/2.3.3",
"type" : "action",
"owner" : "compagny",
"name" : "component_name",
"version" : "2.3.3",
"splitVersion" : {
"major" : 2,
"minor" : 3,
"patch" : 3 },
"jar" : "url...myArtifact.jar",
"timestamp" : ISODate("2014-10-16T14:25:22.954Z"),
"artifactKey" : "artifact-loadsupport/2.3.3"
}
我正在寻找一种方式来获取最新版本的组件。换句话说,获取具有相同所有者/名称的每个组件的最新版本。
我可以有我的结果与此agregation但结果没有得到很好的格式化:
db.components.aggregate(
{$sort: {type : 1, owner : 1, name : 1, "splitVersion.major" : -1, "splitVersion.minor": -1, "splitVersion.patch" : -1} },
{$group: { _id: {owner:"$owner", name : "$name"}, version: { $first: "$version" }}}
)
我可以有我的结果蒙山此聚集,但我怎么能有完整的文档返回? (与.find()相同)
因为我用Jongo映射数据,处理这个聚合结果并不容易...结果没有我的文档类映射。我必须手动绑定值操作搜索...
感谢
谢谢,$项目许可证来解决我的问题。 – ascott 2014-10-21 12:07:34