mongodb 中的格式日期查询输出 shell
Format date in mongodb query output on shell
我想在 mongo shell 输出
上将日期时间格式化为特定格式
我的查询
db.getCollection('people').find({
date: {
$gte: ISODate("2017-04-24T14:04:34.447Z")
}
},
{
_id: 0,
age: 0,
}
);
我针对此查询的输出:
/* 1 */
{
"user_id" : "bcd020",
"status" : "D",
"date" : ISODate("2017-04-24T14:04:34.447Z")
}
/* 2 */
{
"user_id" : "bcd021",
"status" : "D",
"date" : ISODate("2017-04-24T14:04:34.447Z")
}
我想要的是在输出中格式化日期时间,例如
/* 1 */
{
"user_id" : "bcd020",
"status" : "D",
"date" : 2017-04-24 14:04:34
}
/* 2 */
{
"user_id" : "bcd021",
"status" : "D",
"date" : 2017-04-24 14:04:34
}
解决方案正在使用 Veeram 在评论部分
中所述的聚合管道
db.getCollection('people').aggregate([
{
$project:{
datetime: {$dateToString: {format: "%G-%m-%d %H:%M:%S",date: "$datetime"}},
age : 1
}
}
]);
我想在 mongo shell 输出
上将日期时间格式化为特定格式我的查询
db.getCollection('people').find({
date: {
$gte: ISODate("2017-04-24T14:04:34.447Z")
}
},
{
_id: 0,
age: 0,
}
);
我针对此查询的输出:
/* 1 */
{
"user_id" : "bcd020",
"status" : "D",
"date" : ISODate("2017-04-24T14:04:34.447Z")
}
/* 2 */
{
"user_id" : "bcd021",
"status" : "D",
"date" : ISODate("2017-04-24T14:04:34.447Z")
}
我想要的是在输出中格式化日期时间,例如
/* 1 */
{
"user_id" : "bcd020",
"status" : "D",
"date" : 2017-04-24 14:04:34
}
/* 2 */
{
"user_id" : "bcd021",
"status" : "D",
"date" : 2017-04-24 14:04:34
}
解决方案正在使用 Veeram 在评论部分
中所述的聚合管道db.getCollection('people').aggregate([
{
$project:{
datetime: {$dateToString: {format: "%G-%m-%d %H:%M:%S",date: "$datetime"}},
age : 1
}
}
]);