Pregunta

Tengo un documento Mongo con una estructura como: { "foo": { "bar1": "val1", "bar2": "val2"} }Me gustaría importar mis datos de un CSV usando mongoimport --type csv --headerline [...]

No estoy seguro de cómo formatear el nombre del campo en el CSV para abordar la estructura anidada. Por ejemplo:

test.csv:

foo.bar1
example

devoluciones { "_id" : ObjectId("4e9d9d25c5d8708e1f51cdbc"), "foo.bar1" : "example" }En lugar de la salida deseada:

{ "_id" : ObjectId("4e9d9d25c5d8708e1f51cdbc"), "foo: {"bar1" : "example"} }

El nombre del campo parece interpretarse como una cadena independientemente de su valor. Cosas como foo[bar1] y foo: {bar1} también se usan literalmente.

¿Fue útil?

Solución

Esto no es compatible con la versión actual (v2.0) de MongoImport, pero debería ser pronto. Puede consultar el boleto JIRA aquí, programado para v2.1:

Hasta entonces, si puede traducir sus datos de CSV a JSON, entonces podría usar mongoimport --type json para importar los datos anidados.

EDITAR:Esta característica se lanza ahora y está disponible en 2.8.0-rc0

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top