2012-08-03 71 views
0

中時,獲取monogodump的日期範圍內的項目我有一個集合,我試圖在日期範圍內轉儲出來。我有一個查詢工作的所有行,也有它與$ date:1058715(數值)工作,但從來沒有輸出任何我猜測,因爲它不符合該條件中的任何行。當日期字段存儲在ISO

我在monog中的日期存儲爲ISODATE(yadayada),所以我仍然可以用$ date查詢:(數值)嗎?

我在shell中創建了一個日期並獲得了它的值,然後使用該數值。

繼承人我工作的查詢,這將不輸出行

sudo bin/mongodump --db myDB --collection myColl -q '{"reading_date" : { "$gte" : { $date:1341230400000}}}' --out - > dump/myDB /will.bson 

但我想我需要

sudo bin/mongodump --db myDB --collection myColl -q '{"reading_date" : { "$gte" : new Date(2012,05,01)}}' --out - > dump/myDB /will.bson 
+0

所以做你的第二個查詢工作作爲預期? – Stennie 2012-08-03 04:43:53

回答

5

如果要存儲的日期,你可以在蒙戈外殼比較它的JavaScript日期像這樣:

db.coll.find({mydate:{$gt:new Date(2012,0,1)}})

注意,在JS幾個月AR從零開始Ë因此上述表示1月1日2012年

既然你需要通過這mongodump,使用此語法來代替:

mongodump -q '{mydate:{$gte:Date(1341230400000)}}' 

參考:http://www.mongodb.org/display/DOCS/Mongo+Extended+JSON

+0

我需要在Shell外執行 – Baconbeastnz 2012-08-06 04:47:14

+0

爲此添加的語法 – 2012-08-06 17:48:29

+0

第二個示例中存在語法錯誤。如果您添加大括號,則需要有關鍵值。否則你會得到'assertion:16619 code FailedToParse:FailedToParse:Expecting':':offset:21' – jeremywoertink 2013-10-23 22:28:30