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

FALSEで両方のフィールドを除外するMongoDBクエリ


これには、$または演算子を$expr演算子と一緒に使用します。まず、ドキュメントを使用してコレクションを作成しましょう。ここで、フィールドの1つはisMarriedであり、trueがfalseの値です-

> db.orTwoFieldsDemo.insertOne({"isLiveInUS":true,"isMarried":false});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cdfd86abf3115999ed5120d")
}
> db.orTwoFieldsDemo.insertOne({"isLiveInUS":true,"isMarried":true});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cdfd876bf3115999ed5120e")
}
> db.orTwoFieldsDemo.insertOne({"isLiveInUS":false,"isMarried":false});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cdfd87dbf3115999ed5120f")
}

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

> db.orTwoFieldsDemo.find();

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

{ "_id" : ObjectId("5cdfd86abf3115999ed5120d"), "isLiveInUS" : true, "isMarried" : false }
{ "_id" : ObjectId("5cdfd876bf3115999ed5120e"), "isLiveInUS" : true, "isMarried" : true }
{ "_id" : ObjectId("5cdfd87dbf3115999ed5120f"), "isLiveInUS" : false, "isMarried" : false }

以下は、2つのフィールドの両方のFALSE値を回避し、TRUEのフィールドのみを表示するか、TRUEまたは別のFALSEのフィールドの1つを表示するクエリです。その逆-

> db.orTwoFieldsDemo.find({ $expr: { $or: [ "$isLiveInUS", "$isMarried" ] } });

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

{ "_id" : ObjectId("5cdfd86abf3115999ed5120d"), "isLiveInUS" : true, "isMarried" : false }
{ "_id" : ObjectId("5cdfd876bf3115999ed5120e"), "isLiveInUS" : true, "isMarried" : true }

  1. find()の一部のフィールドを除外するMongoDBコレクションクエリ?

    以下の構文のように、含めたくないフィールドを0に設定します。ここでは、フィールド「yourFieldName1」と「yourFieldName2」を0-として設定しました。 db.yourCollectionName.find(yourQuery, {yourFieldName1:0,yourFieldName2:0}); 上記の構文を理解するために、ドキュメントを使用してコレクションを作成しましょう- > db.demo567.insertOne({"Name":"Chris",Age:21});{    "ack

  2. _idを除くすべてのフィールド値を表示するMongoDBクエリ

    ドキュメントを使用してコレクションを作成しましょう- > db.demo590.insert([ ...    { "Name": "Chris", "Age": 21 }, ...    {"Name": "Bob", "Age": 20}, ...    { "Name": "Sam", "Age": 19 } ... ]); BulkWriteR