标签: isodate

在mongodb中使用ISODate进行日期查询似乎不起作用

我似乎无法在MongoDB中使用最基本的日期查询.使用看起来像这样的文档:

{
    "_id" : "foobar/201310",
    "ap" : "foobar",
    "dt" : ISODate("2013-10-01T00:00:00.000Z"),
    "tl" : 375439
}
Run Code Online (Sandbox Code Playgroud)

一个看起来像这样的查询:

{ 
    "dt" : { 
        "$gte" : { 
            "$date" : "2013-10-01T00:00:00.000Z"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我从执行中得到0结果:

db.mycollection.find({
  "dt" : { "$gte" : { "$date" : "2013-10-01T00:00:00.000Z"}}
})
Run Code Online (Sandbox Code Playgroud)

知道为什么这不起作用吗?

作为参考,此查询由Spring的MongoTemplate生成,因此我无法直接控制最终发送到MongoDB的查询.

(PS)

> db.version()
2.4.7
Run Code Online (Sandbox Code Playgroud)

谢谢!

json mongodb bson isodate

170
推荐指数
5
解决办法
33万
查看次数

在javascript中将iso日期转换为毫秒

我可以将iso日期转换为毫秒吗?例如,我想转换此iso

2012-02-10T13:19:11+0000
Run Code Online (Sandbox Code Playgroud)

到毫秒.

因为我想比较创建日期的当前日期.创建日期是iso日期.

javascript iso isodate

66
推荐指数
4
解决办法
14万
查看次数

MongoDB + nodejs:如何查询ISODate字段?

我使用nodejs与node-mongodb-native驱动程序(http://mongodb.github.io/node-mongodb-native/).

我有一个日期属性存储为ISODate类型的文档.

通过nodejs,我正在使用此查询:

db.collection("log").find({
    localHitDate: { 
            '$gte': '2013-12-12T16:00:00.000Z',
            '$lt': '2013-12-12T18:00:00.000Z' 
    }
})
Run Code Online (Sandbox Code Playgroud)

它什么都不返回.为了使它工作,我需要做以下事情:

db.collection("log").find({
    localHitDate: {
            '$gte': ISODate('2013-12-12T16:00:00.000Z'),
            '$lt': ISODate('2013-12-12T18:00:00.000Z')
    }
})
Run Code Online (Sandbox Code Playgroud)

但是ISODate在我的nodejs代码中无法识别.

那么如何通过我的nodejs程序对mongo日期字段进行查询呢?

谢谢

mongodb node.js isodate

44
推荐指数
2
解决办法
5万
查看次数

使用pyMongo创建ISODate

我一直试图找到一种方法来创建一个与pyMongo客户端相关的ISODate对象,但到目前为止还没有任何成功.

我使用http://pypi.python.org/pypi/pymongo3客户端,这是目前Python 3中唯一可用的严重客户端,但问题似乎不是来自这个特定的pymongo版本.

我想知道你是否有人找到了从pymongo客户端使用这个MongoDB对象类型的解决方案...感谢您的帮助!

mongodb pymongo python-3.x isodate

30
推荐指数
2
解决办法
5万
查看次数

从Mongodb格式化ISODate

在Mongodb中,我以ISODate格式存储日期和时间.

看起来像这样

ISODate("2012-07-14T01:00:00+01:00")
Run Code Online (Sandbox Code Playgroud)

使用nodejs/javascript,我如何显示时间组件,以便我得到这样的东西

Time : 01:00
Run Code Online (Sandbox Code Playgroud)

我正在使用momentjs来使这更容易,但从我可以告诉momentjs似乎支持ISODate格式.

谢谢你的帮助.

javascript mongodb node.js isodate

27
推荐指数
2
解决办法
11万
查看次数

从日期转换为ISO字符串中删除秒/毫秒

我有一个我想要的日期对象

  1. 删除miliseconds /或设置为0
  2. 删除秒/或设置为0
  3. 转换为ISO字符串

例如:

var date = new Date();
//Wed Mar 02 2016 16:54:13 GMT-0500 (EST)

var stringDate = moment(date).toISOString();
//2016-03-02T21:54:13.537Z
Run Code Online (Sandbox Code Playgroud)

但最终我真正想要的是

stringDate = '2016-03-02T21:54:00.000Z'
Run Code Online (Sandbox Code Playgroud)

javascript date isodate momentjs

27
推荐指数
5
解决办法
5万
查看次数

如何在PHP中为MongoDB返回ISO日期格式?

我想将PHP生成的当前日期作为ISO日期格式存储到MongoDB集合中.

ISODate("2012-11-02T08:40:12.569Z")
Run Code Online (Sandbox Code Playgroud)

但是我无法在php中生成这种类型的日期,它将作为ISODate格式存储在MongoDB中.

这就是我所做的.

 $d = new MongoDate(time());
 echo $d;
Run Code Online (Sandbox Code Playgroud)

它正在输出类似的东西,

0.00000000 1353305590
Run Code Online (Sandbox Code Playgroud)

这不是我需要的格式.这该怎么做?

php time date mongodb isodate

13
推荐指数
1
解决办法
3万
查看次数

在Mongo中存储Utc和本地日期时间

我有一个Mongo C#实现,它将datetime存储为UTC.

MongoDB.Bson.Serialization.Options.DateTimeSerializationOptions options = 
    MongoDB.Bson.Serialization.Options.DateTimeSerializationOptions.UtcInstance;

var serializer = 
    new MongoDB.Bson.Serialization.Serializers.DateTimeSerializer(options);

MongoDB.Bson.Serialization.BsonSerializer.RegisterSerializer(
    typeof(DateTime),
    serializer);
Run Code Online (Sandbox Code Playgroud)

我还需要将用户本地时区与UTC一起存储.为了解释,我有两个属性

DateTime WorkItemToCompleteBy{get; set;}
[BsonDateTimeOptions(Kind = DateTimeKind.Unspecified)]
DateTime WorkItemToCompleteByLocal{get; set;}
Run Code Online (Sandbox Code Playgroud)

我想将澳大利亚/美国/印度/其他时间存储在本地属性中,并将相应的UTC值存储在另一个属性中.由于处理了几十个时区,我有代码将UTC转换为所需的时区并将其存储在WorkItemToCompleteByLocal属性中.我希望Mongo将这个值"按原样"存储并将其返回给我.问题是Mongo总是将它存储为ISODate并将值转换为Utc版本.解释.如果UTC是0730小时,我计算布里斯班时间为1730小时并将其设置为WorkitemToCompleteByLocal,它们将保存为

"WorkItemToCompleteBy" : ISODate("2013-06-05T07:30:00Z"),
"WorkItemToCompleteByLocal" : ISODate("2013-06-05T12:00:00Z"),
Run Code Online (Sandbox Code Playgroud)

Mongo将提供的时间解释为本地,服务器位于印度,并将其转换为相当于1200小时的UTC.虽然它将值恢复为1730(IST虽然)但是它违背了我的目的并阻止我在Mongo上运行任何基于本地时间的查询.没有想法.感谢任何帮助,以帮助存储WorkItemToCompleteByLocal日期'原样'而无需修改

c# datetime mongodb isodate

12
推荐指数
3
解决办法
2万
查看次数

在mongo中获取Date/ISODate的组件

如何得到这样一个组件minuteISODate存储在MongoCollection

datetime mongodb isodate mongodb-query

11
推荐指数
1
解决办法
1万
查看次数

在javascript中获取没有时间的日期ISO字符串

有没有办法在没有用日期部分重建新日期或格式化它的情况下在 javascript 中获取新日期类型的 ISO 字符串和午夜时间?

我一直在尝试这个

var date = new Date();
date.setHours(0, 0, 0, 0);
document.write(date.toISOString());
Run Code Online (Sandbox Code Playgroud)

我得到了这个

2017-04-20T04:00:00.000Z
Run Code Online (Sandbox Code Playgroud)

我想得到这个

2017-04-20T00:00:00.000Z
Run Code Online (Sandbox Code Playgroud)

是否有我一直在尝试的内置函数或方法来获得所需的输出(使用日期部分重建日期对象)?

javascript time date isodate

10
推荐指数
4
解决办法
2万
查看次数

标签 统计

isodate ×10

mongodb ×7

javascript ×4

date ×3

datetime ×2

node.js ×2

time ×2

bson ×1

c# ×1

iso ×1

json ×1

momentjs ×1

mongodb-query ×1

php ×1

pymongo ×1

python-3.x ×1