MongoDB のコレクションを変換する方法
MongoDBでは、アグリゲーションパイプライン操作を使用して列変換を実行できます。以下は一般的な方法です。
- グループ化
- プロジェクト
- アレイをオブジェクトに変換する
- ルートの置き換え
例えば、以下にその例を紹介します。
db.collection.aggregate([
{
$group: {
_id: null,
column1: { $push: "$column1" },
column2: { $push: "$column2" },
// 添加需要转换的其他列
}
},
{
$project: {
_id: 0,
convertedColumns: {
$arrayToObject: [
{
k: "column1",
v: "$column1"
},
{
k: "column2",
v: "$column2"
},
// 添加其他列的键值对
]
}
}
},
{
$replaceRoot: {
newRoot: "$convertedColumns"
}
}
])
コレクション名を、操作するコレクションに置き換え、column1、column2 などを、変換する列名に置き換えてください。