MongoDB のコレクションを変換する方法

MongoDBでは、アグリゲーションパイプライン操作を使用して列変換を実行できます。以下は一般的な方法です。

  1. グループ化
  2. プロジェクト
  3. アレイをオブジェクトに変換する
  4. ルートの置き換え

例えば、以下にその例を紹介します。

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 などを、変換する列名に置き換えてください。

bannerAds