Node js, mongoose 对数据库中的数据进行排序
Posted
技术标签:
【中文标题】Node js, mongoose 对数据库中的数据进行排序【英文标题】:Node js, mongoose Sort data from database 【发布时间】:2020-01-03 21:35:21 【问题描述】:假设我有一个汽车收藏。现在我想买一辆红色且里程少于 10 万公里的汽车。我应该从数据库中获取所有汽车并创建一个过滤汽车的功能,或者猫鼬有一个过滤这些汽车的功能吗?
最后,我想从这个过滤器中随机选择 5 辆汽车,并在同一时间向 5 个不同的用户显示相同的汽车。我该怎么做?
我认为这张照片说明了一切
https://i.stack.imgur.com/ZQNtb.png
【问题讨论】:
请使用示例数据集(集合文档)和预期输出更新问题,以便我们提供更好的帮助。 How to create a Minimal, Reproducible Example 【参考方案1】:您可以将过滤器直接传递到猫鼬查询中。
const cars = await Collection.find(
Color: "red",
Mileage:
$lt: 100
).limit(5);
【讨论】:
【参考方案2】:我认为您可以使用猫鼬查询,例如:
model.find( color: red ).where('mileage').lt(100000);
mongoose docs(用于限制或排序等更多选项)
然后只需使用随机函数再次过滤值。
附:从性能的角度来看,也许有更好的解决方案
【讨论】:
以上是关于Node js, mongoose 对数据库中的数据进行排序的主要内容,如果未能解决你的问题,请参考以下文章
Node.js - Mongodb - Mongoose / 无法将数组字符串传递到 $push feild
无法在 Node.js 应用程序中使用 mongoose 对 MongoDB 数据库进行排序