要素がドキュメントに存在するかどうかを確認する方法-MongoDB?
MongoDBドキュメントに要素が存在するかどうかを確認するには、MongoDB$existsを使用します。ドキュメントを使用してコレクションを作成しましょう-
> db.demo497.insertOne({"details":[{"Name":"Chris"},{"Name":"Bob"}]});{ "acknowledged" : true, "insertedId" : ObjectId("5e84b3cfb0f3fa88e22790d1") } > db.demo497.insertOne({"details":[{"Name":"Carol"}]});{ "acknowledged" : true, "insertedId" : ObjectId("5e84b3d9b0f3fa88e22790d2") } > db.demo497.insertOne({"details":[{}]});{ "acknowledged" : true, "insertedId" : ObjectId("5e84b3e9b0f3fa88e22790d3") }
find()メソッドを使用してコレクションからすべてのドキュメントを表示する-
> db.demo497.find();
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5e84b3cfb0f3fa88e22790d1"), "details" : [ { "Name" : "Chris" }, { "Name" : "Bob" } ] } { "_id" : ObjectId("5e84b3d9b0f3fa88e22790d2"), "details" : [ { "Name" : "Carol" } ] } { "_id" : ObjectId("5e84b3e9b0f3fa88e22790d3"), "details" : [ { } ] }
以下は、要素がドキュメントに存在するかどうかを確認するためのクエリです-
> db.demo497.find({$or:[ ... {"details.Name" : {$ne : "Carol"}}, ... {details: {$exists: false}} ... ] ... });
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5e84b3cfb0f3fa88e22790d1"), "details" : [ { "Name" : "Chris" }, { "Name" : "Bob" } ] } { "_id" : ObjectId("5e84b3e9b0f3fa88e22790d3"), "details" : [ { } ] }
-
MongoDB配列の要素を削除するにはどうすればよいですか?
要素を削除するには、MongoDBで$ pullを更新して、使用します。 $ pull演算子は、既存の配列から、指定された条件に一致する1つまたは複数の値のすべてのインスタンスを削除します。 まず、ドキュメントを使用してコレクションを作成しましょう- db.demo541.insertOne({"software":{"services":["gmail","facebook","yahoo"]}});{ "acknowledged" : true
-
MongoDB埋め込みドキュメントで特定の要素を見つける方法は?
特定の要素を見つけるには、MongoDBで$projectを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo744.insertOne( ... { ... studentInformation: ... [ ... { ... studentName:"Robert", .