MongoDB日期格式处理指南(mongodb日期格式化)
MongoDB中存储和处理日期是一个重要部分,它可以帮助我们更好地操作数据。本指南将介绍MongoDB日期格式以及如何进行处理。
MongoDB中的日期被存储为短的24位的标准字符串,可以使用以下代码片段访问该字符串:
> db.collection.find({"created_at": {$exists: true}}).forEach(function(document) {
printjson(document.created_at);});
结果为:
2020-04-17T10:59:15.284
2020-03-25T00:45:11.6182019-12-14T20:48:48.299
我们可以看到,MongoDB中的日期字符串格式为“ 年-月-日T时-分-秒.”,其中为毫秒值。
我们可以通过使用以下代码片段来转换日期格式:
> db.collection.find({"created_at": {$exists: true}}).forEach(function(document) {
var dt = new Date(document.created_at); printjson(dt);
});
结果为:
2020-04-17T02:59:15.284Z
2020-03-24T16:45:11.618Z2019-12-14T12:48:48.299Z
可见,通过使用代码我们已经把MongoDB中的日期字符串转换为标准的UTC日期格式。
此外,我们还可以使用以下代码片段,转换为指定的时区时间格式:
> db.collection.find({"created_at": {$exists: true}}).forEach(function(document) {
var dt = new Date(document.created_at); var offset = dt.getTimezoneOffset();
var tzdt = new Date(dt.getTime() + offset * 60 * 1000); printjson(tzdt);
});
结果为:
2020-04-17T10:59:15.284
2020-03-25T00:45:11.6182019-12-14T20:48:48.299
最后,我们可以使用以下代码将标准UTC日期格式转换为我们指定的格式:
> db.collection.find({"created_at": {$exists: true}}).forEach(function(document) {
var dt = new Date(document.created_at); var y = dt.getFullYear();
var m = dt.getMonth()+1; var d = dt.getDate();
var hh = dt.getHours(); var mm = dt.getMinutes();
var ss = dt.getSeconds(); var myFormatDate= y + "-" +m+"-"+d+" "+hh+":"+mm+":"+ss;
printjson(myFormatDate);});
结果为:
2020-4-17 10:59:15
2020-3-25 0:45:112019-12-14 20:48:48
从上面这些代码可以看出,MongoDB中的日期格式处理十分方便,只需要几行简单的代码就可以实现日期格式的转换。MongoDB日期格式处理非常强大而且灵活,可以自由指定需要的日期格式,为我们的数据操作提供便利。