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

MongoDB db.coll.find()を使用して、内部クラスのフィールドに従って検索するにはどうすればよいですか?


ドット表記(。)を使用して、MongoDBを使用して内部クラスを検索します。まず、ドキュメントを使用してコレクションを作成しましょう-

> db.searchInInnerDemo.insertOne(
...    {
...       "StudentFirstName" : "Robert",
...       "StudentTechnicalDetails":
...       {
...          "StudentBackEndTechnology" : "MongoDB",
...          "StudentLanguage" : "Java"
...       }
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd2dd89b64f4b851c3a13d2")
}
>
> db.searchInInnerDemo.insertOne(
...    {
...       "StudentFirstName" : "David",
...       "StudentTechnicalDetails":
...       {
...          "StudentBackEndTechnology" : "MySQL",
...          "StudentLanguage" : "PHP"
...       }
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd2dda3b64f4b851c3a13d3")
}

以下は、find()メソッドを使用してコレクションからすべてのドキュメントを表示するためのクエリです-

> db.searchInInnerDemo.find().pretty();

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

{
   "_id" : ObjectId("5cd2dd89b64f4b851c3a13d2"),
   "StudentFirstName" : "Robert",
   "StudentTechnicalDetails" : {
      "StudentBackEndTechnology" : "MongoDB",
      "StudentLanguage" : "Java"
   }
}
{
   "_id" : ObjectId("5cd2dda3b64f4b851c3a13d3"),
   "StudentFirstName" : "David",
   "StudentTechnicalDetails" : {
      "StudentBackEndTechnology" : "MySQL",
      "StudentLanguage" : "PHP"
   }
}

ケース1 −1つのプロパティのみに一致するように内部クラスを検索するクエリ-

>db.searchInInnerDemo.find({"StudentTechnicalDetails.StudentBackEndTechnology":"MongoDB"}).pretty();

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

{
   "_id" : ObjectId("5cd2dd89b64f4b851c3a13d2"),
   "StudentFirstName" : "Robert",
   "StudentTechnicalDetails" : {
      "StudentBackEndTechnology" : "MongoDB",
      "StudentLanguage" : "Java"
   }
}

ケース2 −完全なフィールド名をスキャンしてドキュメントを検索するためのクエリ-

>db.searchInInnerDemo.find({"StudentTechnicalDetails":{"StudentBackEndTechnology":"MongoDB","StudentLanguage":"Java"}}).pretty();

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

{
   "_id" : ObjectId("5cd2dd89b64f4b851c3a13d2"),
   "StudentFirstName" : "Robert",
   "StudentTechnicalDetails" : {
      "StudentBackEndTechnology" : "MongoDB",
      "StudentLanguage" : "Java"
   }
}

  1. MongoDBのサブドキュメントで検索クエリを実行するにはどうすればよいですか?

    サブドキュメントの場合は、ドット表記を使用します。まず、ドキュメントを使用してコレクションを作成しましょう- > db.demo537.insertOne({"details":{"SubjectName":"MongoDB"}});{    "acknowledged" : true,    "insertedId" : ObjectId("5e8c8a10ef4dcbee04fbbc05") } > db.demo537

  2. MongoDB-ドキュメントのフィールドにアクセスするにはどうすればよいですか?

    ドキュメントのフィールドにアクセスするには、find()を使用するだけです。ドキュメントを使用してコレクションを作成しましょう- > db.demo565.insertOne( ... { ...    id:101, ...    Name:"David", ...    "CountryName":"US" ... } ... ); {    "acknowledged" : true,    "