MongoDBに保存されたオブジェクトを取得する方法をわかりやすく解説
MongoDBに保存されたオブジェクトを取得する方法
MongoDBでは、ドキュメントの内容を変数に格納し、save()メソッドを使ってコレクションに保存できます。本記事では、変数の作成から保存、そして保存されたオブジェクト(ドキュメント)の取得・表示までの基本的な流れを、サンプルコードとともに解説します。
1. ドキュメントを格納する変数を作成する
まず、保存したいデータをJavaScriptオブジェクトとして変数に定義します。以下がそのクエリです。
> var studentDetails={"StudentFirstName":"Chris","StudentLastName":"Brown","StudentAge":24};
2. save()メソッドでレコードを保存する
次に、save()メソッドを使って、作成した変数をコレクション「demo45」に保存します。
> db.demo45.save(studentDetails);
WriteResult({ "nInserted" : 1 })
"nInserted" : 1と表示されれば、1件のドキュメントが正常に挿入されたことを意味します。
3. 保存されたオブジェクトを取得して表示する
変数をそのまま呼び出すことで、保存されたドキュメントの内容を確認できます。また、コレクション内のすべてのドキュメントを取得したい場合はfind()メソッドを使用します。
> studentDetails;
実行結果は以下のようになります。
{
"StudentFirstName" : "Chris",
"StudentLastName" : "Brown",
"StudentAge" : 24,
"_id" : ObjectId("5e25dab4cfb11e5c34d898ec")
}
ポイント:_idフィールドについて
出力結果に注目すると、最初に定義した変数には存在しなかった「_id」フィールドが自動的に追加されていることがわかります。これはMongoDBが各ドキュメントを一意に識別するために自動生成するObjectIdです。save()メソッドでドキュメントを保存すると、この_idが変数にも反映されるため、以降のupdate()やremove()などの操作で活用できます。
-
MongoDBのsave()メソッドの正しい使い方を徹底解説
MongoDBのsave()メソッドとはdb.collection.save()は、ドキュメントのパラメータに応じて、既存ドキュメントの更新または新規ドキュメントの挿入を行うためのメソッドです。ドキュメントに_idフィールドが含まれており、そのIDがコレクション内に存在する場合は更新(update)として動作し、存在しない場合や_idがない場合は新規挿入(insert)として動作します。注意: save()メソッドはMongoDB 4.2以降で非推奨(deprecated)となっています。新しいプロジェクトでは、代わりにinsertOne()やreplaceOne()などの使用が推奨されます。
-
MongoDBで配列の共通部分(交差)データを取得する方法
MongoDBで配列の共通部分を取得するには?MongoDBで配列同士の共通要素(交差)を求めたい場合、集計パイプラインである aggregate() 内で $setIntersection 演算子を使用します。この演算子は、指定した複数の配列に共通して含まれる要素だけを抽出し、重複を除いた配列として返してくれます。それでは、実際にドキュメントを含むコレクションを作成しながら確認していきましょう。1. サンプルコレクションの作成> db.demo625.insertOne( ... { ... Name: "John", ... M