複数のフィールドの存在を確認するためのMongoDBクエリ
複数のフィールドの存在を確認するには、$andとともに$existsを使用します。ドキュメントを使用してコレクションを作成しましょう-
> db.demo475.insertOne({"StudentFirstName":"Chris","StudentAge":23});{ "acknowledged" : true, "insertedId" : ObjectId("5e80c113b0f3fa88e2279088") } > db.demo475.insertOne({"StudentFirstName":"Bob","StudentAge":21,"StudentCountryName":"US"});{ "acknowledged" : true, "insertedId" : ObjectId("5e80c127b0f3fa88e2279089") } > db.demo475.insertOne({"StudentFirstName":"David","StudentAge":22});{ "acknowledged" : true, "insertedId" : ObjectId("5e80c135b0f3fa88e227908a") }
find()メソッドを使用してコレクションからすべてのドキュメントを表示する-
> db.demo475.find();
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5e80c113b0f3fa88e2279088"), "StudentFirstName" : "Chris", "StudentAge" : 23 } { "_id" : ObjectId("5e80c127b0f3fa88e2279089"), "StudentFirstName" : "Bob", "StudentAge" : 21, "StudentCountryName" : "US" } { "_id" : ObjectId("5e80c135b0f3fa88e227908a"), "StudentFirstName" : "David", "StudentAge" : 22 }
以下は、複数のフィールドの存在を確認するためのクエリです-
> db.demo475.find( ... { '$and': ... [ { 'StudentFirstName': { '$exists': true } }, ... { 'StudentAge': { '$exists': true } }, ... { 'StudentCountryName': { '$exists': true } } ] ... } ... );
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5e80c127b0f3fa88e2279089"), "StudentFirstName" : "Bob", "StudentAge" : 21, "StudentCountryName" : "US" }
-
ネストされたドキュメントを更新するMongoDBクエリ?
ネストされたドキュメントを更新するには、update()を使用し、その中でドット表記を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo607.insertOne( ... { ... id:1, ... "Info1" : { ... "Name" : "Chris", ...
-
MongoDB集計で複数のフィールドでカウント
複数のフィールドでカウントするには、MongoDBで$facetを使用します。 $ facetは、同じ入力ドキュメントのセットの単一ステージ内で複数の集約パイプラインを処理します。ドキュメントを使用してコレクションを作成しましょう- > db.demo721.insertOne( ... { ... ... "details1": { ... "id":101 ... ...