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

フィールドが存在しない、nullである、またはfalseであるMongoDBドキュメントを選択しますか?


これには$in演算子を使用できます。まず、ドキュメントを使用してコレクションを作成しましょう。ドキュメントを使用してコレクションを作成するためのクエリは次のとおりです-

> db.selectMongoDBDocumentsWithSomeCondition.insertOne({"StudentId":1,"StudentName":"Larry"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9010215705caea966c557f")
}
> db.selectMongoDBDocumentsWithSomeCondition.insertOne({"StudentId":2,"StudentName":"Mike","hasAgeGreaterThanOrEqualTo18":true});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c90106a5705caea966c5580")
}
> db.selectMongoDBDocumentsWithSomeCondition.insertOne({"StudentId":3,"StudentName":"Carol","hasAgeGreaterThanOrEqualTo18":false});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9010795705caea966c5581")
}
> db.selectMongoDBDocumentsWithSomeCondition.insertOne({"StudentId":4,"StudentName":"Sam","hasAgeGreaterThanOrEqualTo18":null});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9010865705caea966c5582")
}
> db.selectMongoDBDocumentsWithSomeCondition.insertOne({"StudentId":5,"StudentName":"David","hasAgeGreaterThanOrEqualTo18":false});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9010945705caea966c5583")
}
> db.selectMongoDBDocumentsWithSomeCondition.insertOne({"StudentId":6,"StudentName":"Chris","hasAgeGreaterThanOrEqualTo18":null});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9010a45705caea966c5584")
}
> db.selectMongoDBDocumentsWithSomeCondition.insertOne({"StudentId":7,"StudentName":"Robert","hasAgeGreaterThanOrEqualTo18":true});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9010b05705caea966c5585")
}

find()メソッドを使用して、コレクションのすべてのドキュメントを表示します。クエリは次のとおりです-

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

以下は出力&マイナス

です
{
   "_id" : ObjectId("5c9010215705caea966c557f"),
   "StudentId" : 1,
   "StudentName" : "Larry"
}
{
   "_id" : ObjectId("5c90106a5705caea966c5580"),
   "StudentId" : 2,
   "StudentName" : "Mike",
   "hasAgeGreaterThanOrEqualTo18" : true
}
{
   "_id" : ObjectId("5c9010795705caea966c5581"),
   "StudentId" : 3,
   "StudentName" : "Carol",
   "hasAgeGreaterThanOrEqualTo18" : false
}
{
   "_id" : ObjectId("5c9010865705caea966c5582"),
   "StudentId" : 4,
   "StudentName" : "Sam",
   "hasAgeGreaterThanOrEqualTo18" : null
}
{
   "_id" : ObjectId("5c9010945705caea966c5583"),
   "StudentId" : 5,
   "StudentName" : "David",
   "hasAgeGreaterThanOrEqualTo18" : false
}
{
   "_id" : ObjectId("5c9010a45705caea966c5584"),
   "StudentId" : 6,
   "StudentName" : "Chris",
   "hasAgeGreaterThanOrEqualTo18" : null
}
{
   "_id" : ObjectId("5c9010b05705caea966c5585"),
   "StudentId" : 7,
   "StudentName" : "Robert",
   "hasAgeGreaterThanOrEqualTo18" : true
}

これは、フィールドが存在しないか、nullであるか、falseであるMongoDBドキュメントを選択するためのクエリです-

> db.selectMongoDBDocumentsWithSomeCondition.find({ "hasAgeGreaterThanOrEqualTo18": {$in: [false,null]}}).pretty();

以下は出力です-

{
   "_id" : ObjectId("5c9010215705caea966c557f"),
   "StudentId" : 1,
   "StudentName" : "Larry"
}
{
   "_id" : ObjectId("5c9010795705caea966c5581"),
   "StudentId" : 3,
   "StudentName" : "Carol",
   "hasAgeGreaterThanOrEqualTo18" : false
}
{
   "_id" : ObjectId("5c9010865705caea966c5582"),
   "StudentId" : 4,
   "StudentName" : "Sam",
   "hasAgeGreaterThanOrEqualTo18" : null
}
{
   "_id" : ObjectId("5c9010945705caea966c5583"),
   "StudentId" : 5,
   "StudentName" : "David",
   "hasAgeGreaterThanOrEqualTo18" : false
}
{
   "_id" : ObjectId("5c9010a45705caea966c5584"),
   "StudentId" : 6,
   "StudentName" : "Chris",
   "hasAgeGreaterThanOrEqualTo18" : null
}

  1. MySQLで値が存在しないテーブルから選択しますか?

    このために、NOT IN()-を使用できます mysql> create table DemoTable1991 (    StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    StudentName varchar(20) ); Query OK, 0 rows affected (0.61 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1991(StudentName) values('C

  2. 指定されたドメインが存在しないか、接続できませんでした

    Windowsベースのコンピューターを既存のドメインに参加させようとすると、エラーメッセージ指定されたドメインが存在しないか、接続できませんでしたを含むエラープロンプトが表示される場合があります。 。この投稿では、最も可能性の高い原因を特定し、エラーを修正するための最も適切な解決策を提供します。ユーザー名と関連するパスワードを入力すると、エラープロンプトが表示されます。 Active Directoryが正しく機能するには、ドメインDNS(ルーターのアドレスではなく)を使用する必要があるため、このエラーは通常、ワークステーションのDNS設定が無効であるために発生します。このエラーは、I