2016-02-10 5 views
-1

У вас проблемы с mongoexport, похоже, он не работает в запросе. Если я удалю запрос, экспорт будет работать. Любая помощь будет оценена с благодарностью. ко MongoDB 3,2mongoexport с диапазоном дат

Я пытаюсь найти все записи с полем, создаваемым> = 21-Dec-2015 Старинной даты, как предложены в предшествующем посте (https://stackoverflow.com/users/1148648/adam-comerford)

> new Date(2015,11,21)*1 
1450648800000 
> new Date(1450648800000) 
ISODate("2015-12-20T22:00:00Z") 




mongoexport -d MyDB -c MyCollection -q '{created:{$gte:new Date(1450648800000)}}' --out C:\Test\myRecords.json 

Результатов от экспорта

PS C:\Users\Me> mongoexport -d MyDB -c MyCollection -q '{created:{$gte:new Date(1450648800000)}}' --out C:\Test\myRecords.json 
2016-02-11T00:00:08.223+0200 connected to: localhost 
2016-02-11T00:00:08.228+0200 exported 0 records 
PS C:\Users\Me> 
+0

Взгляните на свой собственный выход. Если вы планируете получать диапазон дат UTC с 21 декабря 2015 года, это не то, что было возвращено вашим конструктором даты. Вместо этого введите 'new Date (« 2015-12-21 »). ValueOf()' для возврата значения миллисекунд. Обратите внимание на разницу в использовании конструктора. –

+0

Я попробовал ваше предложение с запросом ниже, однако результаты все еще говорят, что экспортировано 0 записей. Что-то не так с этим запросом -q '{"created": {$ gte: new Date (1450656000000)}} «Я новичок в Mongo, возможно, я что-то упустил? – user2610615

ответ

0

Кажется, дата была импортирована в виде строки в mongoimport, как только я применил решение, рекомендованное webDEVILopers, чтобы преобразовать строку в дату, когда работал экспорт. (См. Importing Date-datatype using mongoimport). После того, как поле было преобразовано на сегодняшний день, экспорт работал правильно.

Смежные вопросы