2017-10-03 27 views
0

私のデータ構造は以下のようになります。mongoexportだけ配列の最初の要素を輸出

{ 
    "id": 1, 
    "timestamp": "1234567", 
    "details": [ 
     { 
      "data": "343434343" 

     } 
     { 
      "data": "66666666" 
     } 
    ] 
} 

私は(下記)シェルに私のコマンドを入力し、それが唯一のdetails配列の最初の要素を出力

コマンド:

mongoexport --port 27017 --collection mycol --db mydb --out example.csv --type csv --fields timestamp,details.0.data 

アレイのすべての要素をCSVにエクスポートするにはどうすればよいですか?

+0

数が固定されているか、それは変わることができますか? –

+0

@PSJは異なる場合があります。方法はありますか?私は髪を引っ張っている – omrakhur

+0

CSVはフラットな構造ファイルです。あなたはCSVでどのように配列を表現しますか? 1つの解決策は、配列の項目を1つの区切り文字列に連結してエクスポートすることです。 – Saleem

答えて

0

--fieldsオプションにdetails.0.dataを書き込む場合、.0は、インデックスがゼロの1番目の配列要素のみを選択することを意味します。

ので、同様にあなたは、あなたのクエリから.0.dataを削除する必要があります。

mongoexport --port 27017 --collection mycol --db mydb --out example.csv --type csv --fields timestamp,details 

これは、出力あなたのexample.csvファイルにdetails配列のすべての要素をする必要があります。

このトピックにMongoDBのドキュメントをチェックアウト: `details`要素内のサブ文書のhttps://docs.mongodb.com/manual/tutorial/query-arrays/#query-for-an-element-by-the-array-index-position

関連する問題