开发者

how use mongoexport to export only specific fields in a sub-document

is there a way to export only specified fields in a sub-document while using mongoexport? mongo docs says to just use -f field1, field2 etc... but that only works with top level fields. i have a document inside of the main document that also has fields. is there any way to get only those?

Example:

{
    "topField1": "topValue1",
    "topField2": "topValue2",
    "subDoc1: {
                  "subField1": "subValue1",
                  "subField2": "subValue2"
              }
}

is there a wa开发者_StackOverflowy to specify that i ONLY get the field subField2?

i know in a regular mongo query i could use "subDoc1.subField2" which would simply return {"$oid": 122432432, {"subDoc1":{"subField2": "subValue2"}} but this doesn't seem to work with mongoexport.

also i want to export as json.


what kind of error do you get using dotnotation? I'm running mongoDB 1.8.2 and for me the following works:

mongoexport -d dbName -c collectionName -f subDoc1.subField2 --csv -o /path/to/file.csv

The CSV looks like this

subDoc1.subField2 #header with field names
"subValue2" #actual entry


how use mongoexport to export only specific fields in a sub-document

mongoexport --db db_name --collection collection_name --fields 'No,Name' --out collection_name.json

{"_id":{"$oid":"5b2a1d540e63356357cbff46"},"name":"vijil","dep":"MCA"} {"_id":{"$oid":"5b2a1d5e0e63356357cbff47"},"name":"arul","dep":"MCA"} {"_id":{"$oid":"5b2a1d670e63356357cbff48"},"name":"abessh","dep":"MCA"}


In case we are not sure of the subdocument value .i.e in this case : subField1 or subField2, but what we need is just to extract the first field of the sub-collection. Can mongoexport handle that ?

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜