具有鲜明的领域MongoDB的查询选择文件
问题描述:
想象我有一个MongoDB的集合,如以下,其中每行对应一个文件:具有鲜明的领域MongoDB的查询选择文件
{name:'rick', age:30}
{name:'john', age:40}
{name:'rick', age:35}
{name:'john', age:20}
{name:'jeff', age:50}
{name:'jeff', age:40}
有些文件已在“名称”字段设置为相同的值( 2个蜱,2个约翰和2个杰夫)。如果两个或多个文档的“名称”字段设置为相同的值,那么我只想选择年龄最高的文档。像这样:
{name:'rick', age:35}
{name:'john', age:40}
{name:'jeff', age:50}
有没有30岁的瑞克和35岁的瑞克?我选择35岁的瑞克!等等...
但是,查询怎么样?
答
db.collection.aggregate([{$group:{_id:"$name",sal:{$max:"$age"}}}]);
答
db.getCollection( 'MYTEST')骨料({$组:{_ ID:{ “名”: “$名”},年龄:{$最大: “$时代”}}})
输出:
{
"_id" : {
"name" : "jeff"
},
"age" : 50
}
/* 2 */
{
"_id" : {
"name" : "john"
},
"age" : 40
}
/* 3 */
{
"_id" : {
"name" : "rick"
},
"age" : 35
}
但我想,因为它们显示在数据库所以我不想{“_id”被displaed文档的输出:{“名”:“麦垛”} ,“年龄”:35}我想{姓名:'rick',年龄:35} – nix86