MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Redirecionar a saída da consulta mongo para um arquivo csv


Eu sei que essa pergunta é antiga, mas passei uma hora tentando exportar uma consulta complexa para csv e queria compartilhar meus pensamentos. Primeiro, não consegui fazer com que nenhum dos conversores json para csv funcionasse (embora este parecesse promissor). O que acabei fazendo foi escrever manualmente o arquivo csv no meu script mongo.

Esta é uma versão simples, mas essencialmente o que eu fiz:
print("name,id,email");
db.User.find().forEach(function(user){
  print(user.name+","+user._id.valueOf()+","+user.email);
});

Isso eu acabei de canalizar a consulta para stdout
mongo test export.js > out.csv

onde test é o nome do banco de dados que eu uso.