配列のサイズを明確にカウントするMongoDBクエリ?
個別の要素にはDISTINCTを使用し、次に長さを使用して配列のサイズを取得します-
db.yourCollectionName.distinct('yourFieldName').length;
まず、ドキュメントを使用してコレクションを作成しましょう-
> db.countOrSizeDemo.insertOne({"StudentFirstName":"John"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd304f5b64f4b851c3a13dc") } > db.countOrSizeDemo.insertOne({"StudentFirstName":"David"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd304fab64f4b851c3a13dd") } > db.countOrSizeDemo.insertOne({"StudentFirstName":"David"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd304fcb64f4b851c3a13de") } > db.countOrSizeDemo.insertOne({"StudentFirstName":"Carol"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd30500b64f4b851c3a13df") } > db.countOrSizeDemo.insertOne({"StudentFirstName":"Sam"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd30505b64f4b851c3a13e0") } > db.countOrSizeDemo.insertOne({"StudentFirstName":"John"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd3050ab64f4b851c3a13e1") }
以下は、find()メソッドを使用してコレクションからすべてのドキュメントを表示するためのクエリです-
> db.countOrSizeDemo.find();
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5cd304f5b64f4b851c3a13dc"), "StudentFirstName" : "John" } { "_id" : ObjectId("5cd304fab64f4b851c3a13dd"), "StudentFirstName" : "David" } { "_id" : ObjectId("5cd304fcb64f4b851c3a13de"), "StudentFirstName" : "David" } { "_id" : ObjectId("5cd30500b64f4b851c3a13df"), "StudentFirstName" : "Carol" } { "_id" : ObjectId("5cd30505b64f4b851c3a13e0"), "StudentFirstName" : "Sam" } { "_id" : ObjectId("5cd3050ab64f4b851c3a13e1"), "StudentFirstName" : "John" }
以下は、クエリ配列のサイズを取得するためのクエリです-
> db.countOrSizeDemo.distinct('StudentFirstName').length;
これにより、次の出力が生成されます-
4
-
ドキュメント内の繰り返しマークの数を取得するためのMongoDBグループクエリ?
グループクエリの場合は、MongoDB $ groupを使用し、$sumでカウントを取得します。ドキュメントを使用してコレクションを作成しましょう- > db.demo676.insertOne({"Marks":87}); { "acknowledged" : true, "insertedId" : ObjectId("5ea41eed04263e90dac943f2") } > db.demo676.insertOne({"Marks&
-
ドキュメント内の配列アイテムの数をカウントし、新しいフィールドに表示するMongoDBクエリ
ドキュメント内の配列アイテムの数をカウントするには、MongoDBで$sizeを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo703.insertOne({"ListOfSubject":["MySQL","MongoDB"]}); { "acknowledged" : true, "insertedId" : ObjectId("5ea6ebaf551299a9f98c93b4"