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

特定のフィールドを持たないドキュメントをフェッチするためのMongoDBクエリ?


存在を確認するには、$existsを使用します。ドキュメントを使用してコレクションを作成しましょう-

> db.demo234.insertOne({"FirstName":"Chris","LastName":"Brown","Age":24});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e418a50f4cebbeaebec5148")
}
> db.demo234.insertOne({"FirstName":"David","LastName":"Miller"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e418a5ff4cebbeaebec5149")
}
> db.demo234.insertOne({"FirstName":"John","LastName":"Smith",Age:34});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e418a70f4cebbeaebec514a")
}

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

> db.demo234.find();

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

{ "_id" : ObjectId("5e418a50f4cebbeaebec5148"), "FirstName" : "Chris", "LastName" : "Brown", "Age" : 24 }
{ "_id" : ObjectId("5e418a5ff4cebbeaebec5149"), "FirstName" : "David", "LastName" : "Miller" }
{ "_id" : ObjectId("5e418a70f4cebbeaebec514a"), "FirstName" : "John", "LastName" : "Smith", "Age" : 34 }

以下は、存在を確認し、「年齢」フィールドのないドキュメントをフェッチするためのクエリです-

> var iterator = db.demo234.find({"Age":{$exists:false}},{"_id":0});
> iterator.forEach(function(d)
...{
...   printjson(d);
...})

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

{ "FirstName" : "David", "LastName" : "Miller" }

  1. idがドキュメントフィールドの配列値と等しい場合に除外するMongoDBクエリ

    このために、$inと一緒に$notを使用します。ドキュメントを使用してコレクションを作成しましょう- [    {       id: "101",       subjectid: [          "102"       ]    },    {       id: "102",   &nb

  2. 空のスペースを含まないフィールド値を取得するためのMySQLクエリ?

    これにはNOTLIKEを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable    (    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    StudentFullName varchar(40)    ); Query OK, 0 rows affected (0.66 sec) 挿入コマンド-を使用してテーブルにレコードを挿入します mysql> insert into DemoTable(Studen