Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 在mongodb中将字符串时间转换为日期_Node.js_Mongodb_Mongoose_Aggregation Framework - Fatal编程技术网

Node.js 在mongodb中将字符串时间转换为日期

Node.js 在mongodb中将字符串时间转换为日期,node.js,mongodb,mongoose,aggregation-framework,Node.js,Mongodb,Mongoose,Aggregation Framework,我有一个聚合查询,在该查询中,我正在拆分字段值,并尝试使用拆分数组中的值使用$dateFromParts创建日期,不幸的是,我遇到以下错误。由于我使用Mongo Altas的M0实例进行开发,其版本为3.6,因此我无法使用v4的$convert和$toInt功能。请提出解决办法 “hour”必须计算为整数,找到值为的字符串 { { $addFields:{ 出发时间:{$split:[“$timings.defation”,“:”]} } } , { $project:{ 出发日期:{$d

我有一个聚合查询,在该查询中,我正在拆分字段值,并尝试使用拆分数组中的值使用
$dateFromParts
创建日期,不幸的是,我遇到以下错误。由于我使用Mongo Altas的M0实例进行开发,其版本为3.6,因此我无法使用v4的$convert和$toInt功能。请提出解决办法

“hour”必须计算为整数,找到值为的字符串

{
{  
$addFields:{
出发时间:{$split:[“$timings.defation”,“:”]}
}
}
,
{
$project:{
出发日期:{$dateFromParts:{'year':dt.getUTCFullYear(),'month':dt.getUTCMonth(),'day':dt.getUTCDate(),'hour':{$arrayElemAt:[“$出发时间”,0],'minute':{$arrayElemAt:[“$出发时间”,1]}
}
}
}
您可以尝试在mongodb3.6中使用

db.collection.aggregate([
  { "$project": {
    "departure_date": {
      "$dateFromString": {
        "dateString": { "$concat": ["2018-09-19", "T", "$timings.departure"] }
      }
    }
  }}
])

您能展示一下
出发时间
Anthony的示例文档吗,我在下面的链接中粘贴了相同的文档,timings是$unwind ed子集合,出发时间是其中出发字段的拆分数组。