Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.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
Mongodb 将mongo$push和$currentDate组合起来,在新数组元素中包含时间_Mongodb_Mongodb Query - Fatal编程技术网

Mongodb 将mongo$push和$currentDate组合起来,在新数组元素中包含时间

Mongodb 将mongo$push和$currentDate组合起来,在新数组元素中包含时间,mongodb,mongodb-query,Mongodb,Mongodb Query,我正在尝试向mongo数组添加一个新文档,我需要其中一个字段作为当前时间戳。这是用于字段级别的版本控制,但我不知道如何将$push和$currentDate组合起来以获得我想要的结果 有人能给我指出正确的方向吗 db.tmp.adviceReportingJourney.update( { _id : "5525f99be4b041151d51386e5525f99be4b041151d513870" }, { $push: { "$cur

我正在尝试向mongo数组添加一个新文档,我需要其中一个字段作为当前时间戳。这是用于字段级别的版本控制,但我不知道如何将$push和$currentDate组合起来以获得我想要的结果

有人能给我指出正确的方向吗

db.tmp.adviceReportingJourney.update(
    { _id : "5525f99be4b041151d51386e5525f99be4b041151d513870" },
    {
        $push: {
            "$currentDate": {
                "Conversation1MeetingCreated" :  {
                    "vid" : 4,
                    "ts" : {"$type": "timestamp"},
                    "data" : 1428552213559
                }
            }
        }
    }
)

您可以使用编码语言date.Now添加当前时间;-) 比如(我是java;-):

更新:运行mongo>3.0时,可以使用$currentDate。从文档中可以看出,$currentDate仅适用于db.collection.update()、db.collection.findAndModify()

请参见下面的示例,以更新嵌入文档“Conversation1MeetingCreated”(其中更新时间戳),使用:


希望能有帮助。

谢谢你回复我。我正在使用Python,并认为可能需要这样做,但我认为Mongo应该能够处理它,因为我希望我的日期在整个数据库中保持一致的格式,并且所有其他集合都使用Mongo时间戳。用$push不可能实现这一点吗?谢谢。我不确定这种情况是否总是这样。在此类查询中使用$currentDate的整个想法是依赖MongoDB的集群时间,而不是本地机器时间。
db.tmp.adviceReportingJourney.update(
    { _id : "5525f99be4b041151d51386e5525f99be4b041151d513870" },
    {
        $push: {
            "$currentDate": {
                "Conversation1MeetingCreated" :  {
                    "vid" : 4,
                    "ts" : {"$type": "timestamp"},
                    "data" : Date.now()
                }
            }
        }
    }
)
{
  $currentDate: {
        "Conversation1MeetingCreated.ts": { $type: "timestamp" }
     }, 
  $set: {
        "Conversation1MeetingCreated.vid" : 4,
        "Conversation1MeetingCreated.data": 1428552213559
     }  
}