mongoexport csv valores de matriz de saída

5

Estou usando o mongoexport para exportar algumas coleções para arquivos CSV. No entanto, quando tento segmentar campos que são membros de uma matriz, não consigo exportá-lo corretamente.

comando que estou usando:

mongoexport -d db -c collection -fieldFile fields.txt --csv > out.csv

e o conteúdo de fields.txt é semelhante a

id
name
address[0].line1
address[0].line2
address[0].city
address[0].country
address[0].postcode

onde os dados do BSON seriam:

{
    "id": 1,
    "name": "example",
    "address": [
        {
            "line1": "flat 123",
            "line2": "123 Fake St.",
            "city": "London",
            "country": "England",
            "postcode": "N1 1AA"
        }
    ]
}

qual é a sintaxe correta para exportar o conteúdo de uma matriz?

    
por 9point6 18.12.2012 / 15:55

1 resposta

7

Você está quase certo, tente isto:

id
name
address.0.line1
address.0.line2
address.0.city
address.0.country
address.0.postcode

Inseri seu documento de amostra na coleção bar no banco de dados test e, em seguida, executei a exportação da seguinte forma:

./mongoexport --port 31000 -d test -c bar -fieldFile fields.txt --csv > out.csv

Em seguida, verifiquei os resultados, que parecem bons para mim:

cat out.csv
id,name,address.0.line1,address.0.line2,address.0.city,address.0.country,address.0.postcode
1.0,"example","flat 123","123 Fake St.","London","England","N1 1AA"
    
por 19.12.2012 / 03:17