node.js - 【mongodb】存储当前时间用什么格式??

查看:425
本文介绍了node.js - 【mongodb】存储当前时间用什么格式??的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

我直接用Date.now(),存到数据库的格式是这样:

ISODate("2017-07-11T01:25:55.448+08:00")

如果按照这种格式存,那么我在查询的时候希望返回格式是这样:

2017-07-11 11:23:34

如何查询?求代码

或者存储其他格式,查询返回同样的结果,也欢迎指导

解决方案

mongodb Date Aggregation Operators文档地址:https://docs.mongodb.com/manu...
$dateToString这个需要 mongodb3.0以上才支持
源数据

db.getCollection('devices').insert([
{
    "_id" : ObjectId("593d1df123aa5c000ea57b80"),
    "Last_Modify_Time" : 1.0,
    "Last_Modify_By" : 1.0,
    "Creation_Time" : ISODate("2017-06-11T10:39:45.000Z")
},{
    "_id" : ObjectId("593e7091e2bdc3000e4cdca3"),
    "Last_Modify_Time" : 2.0,
    "Last_Modify_By" : 2.0,
    "Creation_Time" : ISODate("2017-06-12T10:44:33.000Z")
},{
    "_id" : ObjectId("5949106bd4e170000e544c1a"),
    "Last_Modify_Time" : 3.0,
    "Last_Modify_By" : 3.0,
    "Creation_Time" : ISODate("2017-06-20T12:09:15.000Z")
},{
    "_id" : ObjectId("593ced72c4162e000e7e9611"),
    "Last_Modify_Time" : null,
    "Last_Modify_By" : null,
    "Creation_Time" : ISODate("2017-06-11T07:12:50.000Z")
}
])

SQL 语句

db.getCollection('devices').aggregate([
{
    $project: {
        'date': {
            // 将Creation_Time字段加上8*60*60*1000毫秒后,再格式化时间
            $dateToString: {format: "%Y-%m-%d %H:%M:%S", date: {$add:['$Creation_Time',28800000] } }
        },
        'Last_Modify_Time': '$Last_Modify_Time',
        'Last_Modify_By': '$Last_Modify_By'
    }
}
])

结果

/* 1 */
{
    "_id" : ObjectId("593d1df123aa5c000ea57b80"),
    "Last_Modify_Time" : 1.0,
    "Last_Modify_By" : 1.0,
    "date" : "2017-06-11 18:39:45"
}

/* 2 */
{
    "_id" : ObjectId("593e7091e2bdc3000e4cdca3"),
    "Last_Modify_Time" : 2.0,
    "Last_Modify_By" : 2.0,
    "date" : "2017-06-12 18:44:33"
}

/* 3 */
{
    "_id" : ObjectId("5949106bd4e170000e544c1a"),
    "Last_Modify_Time" : 3.0,
    "Last_Modify_By" : 3.0,
    "date" : "2017-06-20 20:09:15"
}

/* 4 */
{
    "_id" : ObjectId("593ced72c4162e000e7e9611"),
    "Last_Modify_Time" : null,
    "Last_Modify_By" : null,
    "date" : "2017-06-11 15:12:50"
}

这篇关于node.js - 【mongodb】存储当前时间用什么格式??的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆