MongoDB

【MongoDB】データ(ドキュメント)を追加する方法

本記事では、MongoDBでコレクションに対してデータ(ドキュメント)を追加する方法について解説しています。

MongoDBの学習におすすめ参考書
RDBエンジニアでもできる!MongoDBの構築と運用入門

本書情報
出版社インプレスR&D
著者目黒 聖
発売日2021/12/10
ページ数140ページ
Kindle版
(電子書籍)

参考書が苦手な人はUdemyの動画がおすすめ
MongoDB入門 ー 演習しながら学ぶクエリ操作

動画情報
作成者津郷 晶也
学習時間5.5時間
受講者数1,188人
レビュー (120件)
動画の詳細はこちら

データ(ドキュメント)を追加する

データを追加するには、「db.collection.insertOne()」「db.collection.insertMany()」「db.collection.insert()」の3つの方法があります。

データを追加するメソッドの違い
  • insertOne():単一データを追加
  • insertMany():複数データを追加
  • insert():単一データ・複数データの両方を追加

以降の解説では、insertOne()とinsertMany()の機能を兼ね備えたdb.collection.insert()を使用してデータを追加する方法について解説しています。

単一データ(ドキュメント)を追加

単一データを追加する方法は以下のとおりです。

db.collection.insert({key: value})
メソッドの解説
  • collection:データを追加したいコレクションを指定
  • key:データと紐付けるキー
  • value:データの値

実際に単一データを追加した実行結果は以下のとおりです。

> db.person.insert({name: "taro"})
WriteResult({ "nInserted" : 1 })

> db.person.find()
{ "_id" : ObjectId("62c973c89ca59944c7c38a61"), "name" : "taro" }

_idを何も指定しない場合、MongoDB側で自動に一意のキーを割り振ります。

複数データ(ドキュメント)を追加

単一データを追加する方法は以下のとおりです。

db.collection.insert([{key: value}, {key: value}])

基本的な使い方は単一データを挿入する時と同じで、異なる点は配列の中にオブジェクトを作成していることです。このような形にすることで、複数データを追加することが出来ます。

実際に複数データを追加した実行結果は以下のとおりです。

> db.person.insert([{name: "taro"}, {name: "ken"}])
BulkWriteResult({
	"writeErrors" : [ ],
	"writeConcernErrors" : [ ],
	"nInserted" : 2,
	"nUpserted" : 0,
	"nMatched" : 0,
	"nModified" : 0,
	"nRemoved" : 0,
	"upserted" : [ ]
})

> db.person.find()
{ "_id" : ObjectId("62c975d09ca59944c7c38a62"), "name" : "taro" }
{ "_id" : ObjectId("62c975d09ca59944c7c38a63"), "name" : "ken" }

ブログランキング・にほんブログ村へ PVアクセスランキング にほんブログ村