MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

配列に$allを含むMongoDBクエリ


MongoDBでは、$ allを使用して、フィールドの値が指定されたすべての要素を含む配列であるドキュメントを選択します

ドキュメントを使用してコレクションを作成しましょう-

> db.demo163.insertOne(
...    {
...       "ClientDetails": [{
...          "ClientName": "Chris"
...
...       }, {
...          "ClientName": "David"
...
...       }
...    ]
...
... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3686d49e4f06af551997c5")
}
> db.demo163.insertOne(
...    {
...       "ClientDetails": [{
...          "ClientName": "Mike"
...
...    }, {
...    "ClientName": "Sam"
...
...    }
... ]
...
... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3686d59e4f06af551997c6")
}
>
db.demo163.insertOne(
...    {
...       "ClientDetails": [{
...          "ClientName": "Robert"
...
...       }, {
...          "ClientName": "Sam"
...
...       }
...    ]
... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3686d59e4f06af551997c7")
}

find()メソッドを使用してコレクションからすべてのドキュメントを表示する-

> db.demo163.find();

これにより、次の出力が生成されます-

{ "_id" : ObjectId("5e3686d49e4f06af551997c5"), "ClientDetails" : [ { "ClientName" : "Chris" }, { "ClientName" : "David" } ] }
{ "_id" : ObjectId("5e3686d59e4f06af551997c6"), "ClientDetails" : [ { "ClientName" : "Mike" }, { "ClientName" : "Sam" } ] }
{ "_id" : ObjectId("5e3686d59e4f06af551997c7"), "ClientDetails" : [ { "ClientName" : "Robert" }, { "ClientName" : "Sam" } ] }

以下は、MongoDBでの$allのクエリです-

> db.demo163.find({"ClientDetails": {$all: [{"ClientName": "Mike"}, {"ClientName": "Sam"}]}});

これにより、次の出力が生成されます-

{ "_id" : ObjectId("5e3686d59e4f06af551997c6"), "ClientDetails" : [ { "ClientName" : "Mike" }, { "ClientName" : "Sam" } ] }

  1. MongoDBで$pushを使用して配列を更新する

    $ pushで配列を更新するには、MongoDBでupdateOne()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo526.insertOne( ... { ... ...    "CountryName": "US", ...    "TeacherName": "Bob", ...    "StudentInformation": [ ...      

  2. MongoDBを使用して埋め込みドキュメントの配列でクエリをフィルタリングしますか?

    これには、MongoDBでaggregate()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo736.insertOne( ...    { ...       "_id": "101", ...       "details1": [ ...          { ...             &q