- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
以下是文档的结构:
{
"_id" : ObjectId("4fccd39c9d8597a034d183b1"),
"image" : "23ef514f8201320c2d7253e4bf28edf6",
"owner" : "1b8c335c902ac4ab128ee8ed773bee04",
"pageviews" : 57,
"source" : "b1b3849b472edada1b922c786df5b46f",
"timestamp" : ISODate("2012-06-04T00:00:00Z")
}
我正在执行以下 mongodump
查询来转储所有 timestamp
大于 2013 年 11 月 1 日的文档:
mongodump -d dbname -c coll_name -q "{source: "7e04f65e47ed3ddfeb21716a247e3fa6", timestamp: {\$gte: new Date(2013, 10, 1)}}"
它显示:
assertion: 16619 code FailedToParse: FailedToParse: Expecting '}' or ',': offset:13
即使相同的查询对象(除了用于转义 $gte
的反斜杠)在 mongo
shell 中也可以正常工作。我做错了什么?
附: MongoDB的版本是2.4.6
最佳答案
您的嵌套引号有问题:
mongodump -d dbname -c coll_name -q "{source: "7e04f65e47ed3ddfeb21716a247e3fa6", timestamp: {\$gte: new Date(2013, 10, 1)}}"
# ----------------------------------^---------^
我会在外面使用单引号:
mongodump -d dbname -c coll_name -q '{source: "7e04f65e47ed3ddfeb21716a247e3fa6", timestamp: {$gte: new Date(2013, 10, 1)}}'
这也可以让您避免转义 $gte
也。如果它不喜欢 new Date
那么你可以使用:
{$gte: new Date(1383264000000)}
对于后人来说,似乎 -q
解析器不喜欢 Date
的三参数形式构造函数也不喜欢 ISODate
MongoDB 通常用于日期和时间戳的函数。我得到了令人困惑的断言失败,例如:
Assertion: 10340:Failure parsing JSON string near: timestamp
当我尝试其中任何一个时。这让我很困惑,但有时最好在找到可行的解决方案后安静地走开。
关于mongodb - mongodump - 时间戳字段的范围查询引发失败的解析错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19805738/
给定一个带有多个 date_time 戳的字符串,我想 提取第一个戳及其前面的文本 候选字符串可以有一个或多个时间戳 后续的 date_time 戳记将被 sep="-" 隔开 后续date_time
是否可以合并从相机拍摄的文本和照片?我想在照片上标记日期和时间,但我在 Google 上找不到任何内容。 最佳答案 使用下面的代码来实现你所需要的。 Bitmap src = Bitm
有没有办法通过 Graph API 戳另一个用户?基于this post ,并使用 Graph Explorer ,我发布到“/USERID/pokes”,我已经授予它(Graph API 应用程序和
我有两个向左浮动的元素。一个是 body 的第一个 child ,另一个是容器的第一个 child ,容器是 body 的第二个 child 。 ...
我是一名优秀的程序员,十分优秀!