Używam MongoDB 2.2.2 na komputerze z 32-bitowym systemem Windows7. Mam złożone zapytanie agregujące w pliku .js. Muszę wykonać ten plik w powłoce i skierować dane wyjściowe do pliku CSV. Zapewniam, że zapytanie zwraca „płaski” plik JSON (bez zagnieżdżonych kluczy), więc jest z natury konwertowany na schludny plik CSV.
Wiem o load()
i eval()
. eval()
wymaga ode mnie wklejenia całego zapytania do powłoki i pozwala tylko printjson()
wewnątrz skryptu, podczas gdy potrzebuję csv. Drugi sposób: load()
... Drukuje wynik na ekranie i znowu w formacie json.
Czy istnieje sposób, w jaki Mongo może wykonać tę konwersję z json na csv? (Potrzebuję pliku csv, aby przygotować wykresy na danych). Myślę:
1. Każda mongo ma wbudowane polecenie, którego nie mogę teraz znaleźć.
2. Mongo nie może tego zrobić za mnie; Mogę co najwyżej wysłać dane wyjściowe json do pliku, który następnie muszę sam przekonwertować na csv.
3. Mongo może wysłać dane wyjściowe json do tymczasowej kolekcji, której zawartość można łatwo zapisać mongoexported
w formacie csv. Ale myślę, że tylko zapytania ograniczające mapę obsługują zbiory danych wyjściowych. Czy to prawda? Potrzebuję go do zapytania agregującego.
Dzięki za wszelką pomoc :)