sql >> Base de Datos >  >> NoSQL >> MongoDB

Mongoexport usando restricciones de $ gt y $ lt en un rango de fechas

El problema aquí es cómo está representando las fechas, deben pasarse como Date tipos y en formato de época. Prueba esto en su lugar:

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 está buscando convertir ISODate a epoch, simplemente llame a date en el shell, algo como esto:

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

Luego para verificar:

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

Actualización: Como se indica en los comentarios de imcaptor, el mes se basa en cero (0 =enero, 11 =diciembre) en la Date constructor, no es algo que la mayoría esperará y es fácil de olvidar. Aprobé 01 en el ejemplo anterior y obtuve una fecha de febrero, como puede ver en la fecha ISO de la verificación.