Mongodb查询使用javascript文件格式的日期时间

Mongodb query using javascript file - format datetime

本文关键字:格式 日期 时间 文件 javascript 查询 Mongodb      更新时间:2023-09-26

我使用的是mongodb3.0.5,我的集合如下所示:

{
    "_id" : "xxxxxxxxxxxxxxx",
    "SchoolId" : 1,
    "ActivationTimestamp" : ISODate("2015-09-22T13:01:58.000Z"),
    "PersonDetails" : [ 
        {
            "Name" : "John",
            "AddressZone" : 6,
        }, 
        {
            "Name" : "Mary",
            "AddressZone" : 5,
        },
    ],
    "CreationTimestamp" : ISODate("2015-11-10T10:55:00.009Z")
}

我有一个js文件,如下所示:

var printData = function(doc){
        print(doc.CreationTimestamp+","+doc.SchoolId+","+doc.PersonDetails.Name+","+doc.PersonDetails.AddressZone)
    };
var cur = 
    db.test.aggregate([
        {$match: {_id: "xxxxxxxxxxxxxxx"}},
        {$unwind: '$PersonDetails'}]);
cur.forEach(printData);

如果我运行这个命令:

.'mongo localhost/test test.js > output.txt

我得到了以下输出(不包括所有行,只是一个样本):

2015年9月22日星期二14:01:58 GMT+0100(GMT夏令时),1,John,6

但我希望日期的格式类似于:

2015年9月22日下午14:01:58

是否有一个函数或其他东西可以如上所述输出日期时间?

您可以使用日期并将其放入javascript日期对象中:

var d = new Date(doc.CreationTimestamp);

现在你可以随心所欲地按摩它:

var date = d.getDate() + '/' + (d.getMonth()+1) + '/' + d.getFullYear() + ' ' + d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds();

检查http://www.w3schools.com/jsref/jsref_obj_date.asp对于您可以在日期对象上调用的所有函数。