如何查找文件
How to find documents
下面是app.js中的猫鼬代码
app.get('/view', function (req, res) {
if (err) return handleError(err);
{
);});
我有两个不同的主机条目,Host_name: Redhat1,Host_name:Redhat2。如何使用猫鼬获取两者的最新条目。在模式中查找上述条件应该修改的内容。请帮忙
试试这个
User.aggregate(
{ $match: { "Host.Host_name": { $in: ["RedHat1", "RedHat2"] }}}
{ $group: { _id: "$Host.Host_name", Time_stamp:{$last:'$Date.Time_stamp'}}}
,function (err,docs) {
if (err) return handleError(err);
var Users = docs.map(function (User){
return {
time: User.Time_stamp,
host: User._id
}
});
res.render('index',{Users: Users});
});
希望这能解决你的问题
最简单的方法:按Host_Name查找(每个名称一个查询),按时间戳排序,限制为1。
// needed to tell mongoose to use ES6 Promises
require('mongoose').Promise = global.Promise;
app.get('/view', function (req, res) {
var query1 = User.find({ "Host.Host_name": "RedHat1" })
.sort({ Date.Time_stamp: -1 })
.limit(1)
.exec(); // exec() without argument returns a promise
var query2 = User.find({ "Host.Host_name": "RedHat2" })
.sort({ Date.Time_stamp: -1 })
.limit(1)
.exec();
Promise.all([query1, query2])
.then(function (docs) {
var Users = docs.map(function (User){
return {
time: User.Date.Time_stamp,
host: User.Host.Host_name
}
});
res.render('index',{Users: Users});
}).catch(function (err) {
console.log(err);
});
});
编辑:做两个查询导致另一个问题,你必须等待两者是完整的发送响应之前,所以我更新了我的例子。
相关文章:
- 在IntelliJ IDEA中,如何将JS文件从“;查找用法“;使用TypeScript时的结果
- 可在多个相册文件夹中查找的动态图像库
- Node.js服务器问题-已添加“/"在浏览器中查找文件时
- 在JSON文件中查找一个元素,并将其显示为HTML
- 无法查找元素'手动加载CSS文件时的CSS属性
- JavaScript 文件或文件夹查找和导入
- 如何使用 Java 脚本从 csv 文件中查找每列的数据类型
- GridFS 通过_id使用文件名下载来查找文件
- 递归查找 jsTestDriver 中的文件
- 用于在组合文件中查找 AMD 定义呼叫的正则表达式
- Require JS with Knockout组件正在查找路径不正确的JS文件
- 更新:用户错误-TYPO!!grunt contrib咖啡错误查找文件&写入目的地
- 查找并替换多个Photoshop文件中的文本
- 如何查找不同页面上是否确实需要包含的JavaScript文件
- 如何在日志文件中查找字符串并返回整行
- 使用Realm React Native查找Realm文件的路径,以便与Realm Browser一起使用
- 查找位置/地址的Js文件
- 如何查找jquery或javascript事件从哪个文件发生
- JQuery可以't从单独的javascript文件中查找变量
- 同步和递归文件系统文件查找