próbuję uruchomić to:Mongoexport -q ISODate zapytania
mongoexport.exe -h *MYHOST* -p *MYPORT* -q "{'time':{'$gte': ISODate('2014-12-21 12:57:00.506Z'),'$lt': ISODate('2014-12-21 12:59:00.506Z')}}"
Albo to (GTE & lt bez - '):
mongoexport.exe -h *MYHOST* -p *MYPORT* -q {'time':{$gte: ISODate('2014-12-21 12:57:00.506Z'),$lt: ISODate('2014-12-21 12:59:00.506Z')}}
Kwerenda działa dobrze na Robomongo, Ale z mongoexport wyrzuca: "zbyt wiele argumentów pozycyjnych"
Wiem, że zamiast tego mogę uruchomić następujące polecenie, ale nie chcę używać konwertera daty za każdym razem, gdy potrzebuję wykonać zapytanie.
mongoexport.exe -h *MYHOST* -p *MYPORT* -q "{'time':{$gte: new Date(14191
66620506),$lt: new Date(1419166740506)}}"
Czy ta odpowiedź jest nadal ważna? Zapytanie za pomocą ciągu znaków zamiast ISODate wydaje się nie zwracać żadnych wyników, podczas gdy dodanie konstruktora ISODate ("") zwróci wyniki - bezpośrednio w powłoce Mongo. W mongoexports dodanie konstruktora ISODate ("") (lub JS Date) powoduje błąd. – netpoetica
Wygląda na to, że działa to poprawnie, ale znacznik czasu może być bardzo wyraźny. Czas epoki musi być sformatowany tak, aby zawierał milisekundy i czas iso (jako łańcuch jak wyżej) * musi * zawierać mikrosekundy. – netpoetica
Dodatkowo, jeśli napiszesz znacznik czasu jak "2015-10-18T00: 00: 00Z00: 00", wówczas mongoexport będzie narzekał na dodatkowy tekst: 00:00. – forgetso