Javascript 如何查询字段值最高的文档
假设我有一套文件。为了简化这个过程,假设所有这些文档只有两个字段,name和id,如下所示 我想得到“id”值最大的文档。我可以将.find({})与一些参数一起使用吗?如果是这样的话,我无法确定哪个参数会为我找到某个字段的最大值Javascript 如何查询字段值最高的文档,javascript,arrays,mongodb,object,mongoose,Javascript,Arrays,Mongodb,Object,Mongoose,假设我有一套文件。为了简化这个过程,假设所有这些文档只有两个字段,name和id,如下所示 我想得到“id”值最大的文档。我可以将.find({})与一些参数一起使用吗?如果是这样的话,我无法确定哪个参数会为我找到某个字段的最大值 [ { name: "name1", id: 1 } { name: "name2", id: 2 } { name: "name1", id: 3 } { name: "name1"
[
{
name: "name1",
id: 1
}
{
name: "name2",
id: 2
}
{
name: "name1",
id: 3
}
{
name: "name1",
id: 0
}
]
let文档=[
{
名称:“名称1”,
身份证号码:1
},
{
名称:“名称2”,
身份证号码:2
},
{
名称:“名称1”,
身份证号码:3
},
{
名称:“名称1”,
身份证号码:0
}
];
设max=documents.sort((a,b)=>a.id>b.id?-1:1)[0]
控制台日志(最大值)代码>首先,按降序排序,然后获取第一个:
const arr=[{
名称:“名称1”,
身份证号码:1
},
{
名称:“名称2”,
身份证号码:2
},
{
名称:“名称1”,
身份证号码:3
},
{
名称:“名称1”,
身份证号码:0
}
];
const[magest]=arr.sort({id:a},{id:b})=>b-a);
console.log(最大)
您可以对该数组进行排序,并使用函数pop
获取具有最大id
的对象
arr.slice() // This is to avoid a mutation on the original array.
让arr=[{name:“name1”,id:1},{name:“name2”,id:2},{name:“name1”,id:3},{name:“name1”,id:0}],
最大的=arr.slice().sort({id:a},{id:b})=>a-b.pop();
console.log(最大)代码>
.as控制台包装{最小高度:100%;}