Mongodb: 各ドキュメントからフィールドを削除する方法
次のメソッドを使用して、MongoDB のコレクション内の各ドキュメントからフィールドを削除できます。
方法 1: フィールドを削除する
db.collection.updateMany({}, { $unset : {" field1 ":1}})
方法 2: 複数のフィールドを削除する
db.collection.updateMany({}, { $unset : {" field1 ":1, " field2 ":1}})
次の例は、次の文書を使用して収集チームで各方法を使用する方法を示しています。
db.teams.insertOne({team: " Mavs ", position: " Guard ", points: 31 })
db.teams.insertOne({team: " Spurs ", position: " Guard ", points: 22 })
db.teams.insertOne({team: " Rockets ", position: " Center ", points: 19 })
例 1: フィールドを削除する
次のコードを使用して、コレクション内の各ドキュメントから「ポイント」フィールドを削除できます。
db.teams.updateMany({}, { $unset : {" points ":1}})
次に、次のクエリを使用して、コレクション内の各ドキュメントを表示できます。
db.teams.find()
このクエリは次の結果を返します。
{ _id: ObjectId("61893b7196cd2ba58ce928f4"),
team: 'Mavs',
position: 'Guard' }
{ _id: ObjectId("61893b7196cd2ba58ce928f5"),
team: 'Spurs',
position: 'Guard' }
{ _id: ObjectId("61893b7196cd2ba58ce928f6"),
team: 'Rockets',
position: 'Center' }
各文書から「ポイント」フィールドが削除されていることに注意してください。
例 2: 複数のフィールドを削除する
次のコードを使用して、コレクション内の各ドキュメントから「ポイント」フィールドと「位置」フィールドを削除できます。
db.teams.updateMany({}, { $unset : {" points ":1, " position ":1}})
次に、次のクエリを使用して、コレクション内の各ドキュメントを表示できます。
db.teams.find()
このクエリは次の結果を返します。
{ _id: ObjectId("61893bf896cd2ba58ce928f7"), team: 'Mavs' }
{ _id: ObjectId("61893bf896cd2ba58ce928f8"), team: 'Spurs' }
{ _id: ObjectId("61893bf896cd2ba58ce928f9"), team: 'Rockets' }
「ポイント」フィールドと「位置」フィールドが各ドキュメントから削除されていることに注意してください。
注: $unsetの完全なドキュメントはここで見つけることができます。
追加リソース
次のチュートリアルでは、MongoDB で他の一般的な操作を実行する方法について説明します。
MongoDB: コレクションに新しいフィールドを追加する方法
MongoDB: グループ化してカウントする方法
MongoDB: 複数のフィールドでグループ化する方法