MongoDBの$project演算子を説明する

MongoDB

MongoDB Exercises

$project は、MongoDBの集計パイプライン操作で使用されるステージの1つです。このステージは、ドキュメント内のフィールドを変更、追加、除外するために使用されます。つまり、特定のフィールドを抽出して新しいフィールドを作成したり、不要なフィールドを取り除いたりできるステージです。

$project ステージは以下のように使用されます:

{
  $project: { <フィールド操作> }
}

ここで <フィールド操作> は、フィールドの変更や追加、除外などの操作を指定するオブジェクトです。このオブジェクト内でクエリ演算子を使用してフィールド操作を定義します。

例えば、以下のように $project ステージを使用して特定のフィールドを抽出して新しいフィールドを作成することができます:

{
  $project: {
    "name": 1,          // "name" フィールドを残す
    "borough": 1,       // "borough" フィールドを残す
    "score": "$grades.score", // "grades.score" フィールドを新しい "score" フィールドとして追加
    "_id": 0            // "_id" フィールドを除外
  }
}

また、演算子を使用して計算したり変更したりすることもできます。例えば、以下のように $project ステージを使用して、日付フィールドから月と年を抽出することができます:

{
  $project: {
    "month": { $month: "$dateField" }, // "dateField" フィールドから月を抽出
    "year": { $year: "$dateField" }    // "dateField" フィールドから年を抽出
  }
}

要するに、$project ステージはドキュメント内のフィールドを操作するためのものであり、フィールドの抽出や計算、新しいフィールドの作成、不要なフィールドの除外などを行う際に使用されます。

コメント

タイトルとURLをコピーしました