Mongoexport utilisant des contraintes de $ gt et $ lt à une fourchette de dates

J'essaie d'obtenir les commandes faites pour un certain jour de mon mongo à l'aide de l'appel de mongoexport suivant:

mongoexport --db store --collection user_data --query "{'order.created_order':{$gt:ISODate("2013-02-05T00:00:00.000Z"),$lt:ISODate("2013-02-06T00:00:00.000Z")}, 'order.status':'paid'}" --out ordersfeb6.json

Mais j'ai actuellement l'erreur suivante:

 Thu Feb 7 18:33:43 Assertion: 10340:Failure parsing JSON string near: 'order.cre 0x56a223 0x5712e5 0x53e0f7 0x53e21e 0x8b7739 0x524f2b 0x5258a3 0x7fa7b77bd76d 0x525975 mongoexport(_ZN5mongo15printStackTraceERSo+0x23) [0x56a223] mongoexport(_ZN5mongo11msgassertedEiPKc+0xc5) [0x5712e5] mongoexport(_ZN5mongo8fromjsonEPKcPi+0x377) [0x53e0f7] mongoexport(_ZN5mongo8fromjsonERKSs+0xe) [0x53e21e] mongoexport(_ZN6Export3runEv+0x489) [0x8b7739] mongoexport(_ZN5mongo4Tool4mainEiPPc+0x72b) [0x524f2b] mongoexport(main+0x23) [0x5258a3] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed) [0x7fa7b77bd76d] mongoexport() [0x525975] assertion: 10340 Failure parsing JSON string near: 'order.cre 

De cette question mongoexport JSON erreur d'analyse, je sais que javascript est utilisé pour évaluer certaines parties des requêtes mongo. Je me demandais: les opérateurs $ gt et $ lt ont-ils besoin de javascript et est-ce mon problème? Sinon, je ne sais pas ce qui ne va pas avec ma requête et toutes les suggestions seront grandement appréciées. Merci pour la lecture!

La question ici est la façon dont vous représentez les dates, elles doivent être transmises en types de Date et en format d'époque. Essayez ceci à la place:

 mongoexport --db store --collection user_data --query '{"order.created_order":{$gt:new Date(1360040400000),$lt:new Date(1360990800000)}, "order.status" : "paid"}' --out ordersfeb6.json 

Si vous cherchez à convertir ISODate en époque, appelez simplement la date dans le shell, quelque chose comme ceci:

 > new Date(2013,01,16)*1 1360990800000 

Ensuite, pour vérifier:

 > new Date(1360990800000) ISODate("2013-02-16T05:00:00Z") 

Mise à jour: Comme indiqué dans les commentaires par imcaptor , le Mois est zéro basé (0 = Jan, 11 = Déc) dans le constructeur Date , pas quelque chose que l'on s'attende et facile à oublier. Je suis passée à 01 dans l'exemple ci-dessus et j'ai eu une date de février, comme vous pouvez le constater dans la version ISODate de la vérification.