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

データのようなJSONから値を見つけるためのMongoDBクエリ?


JSONデータから値を調達するには、find()とdot(。)表記を使用します。まず、ドキュメントを使用してコレクションを作成しましょう-

> db.findValueFromJsonDemo.insertOne(
   {
      "UserDetails": [{
         "_id": new ObjectId(),
         "UserName": "Carol",
         "UserMessage": "Hi"
      }],
      "UserFriendsName": ["John","Sam"]
   }
);
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cdf8a4cbf3115999ed511fd")
}

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

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

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

{
   "_id" : ObjectId("5cdf8a4cbf3115999ed511fd"),
   "UserDetails" : [
      {
         "_id" : ObjectId("5cdf8a4cbf3115999ed511fc"),
         "UserName" : "Carol",
         "UserMessage" : "Hi"
      }
   ],
   "UserFriendsName" : [
      "John",
      "Sam"
   ]
}

以下は、jsonデータから値を見つけるためのクエリです-

> db.findValueFromJsonDemo.find({'UserDetails.UserMessage': "Hi"});

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

{
   "_id" : ObjectId("5cdf8a4cbf3115999ed511fd"),
   "UserDetails" : [
      {
         "_id" : ObjectId("5cdf8a4cbf3115999ed511fc"),
         "UserName" : "Carol",
         "UserMessage" : "Hi"
      }
   ],
   "UserFriendsName" : [
      "John",
      "Sam"
   ]
}

  1. 「like」に似たMongoDBをクエリする方法は?

    「like」と同様に実装するには、MongoDBで//と一緒にfind()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo686.insertOne({"FirstName":"Robert"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5ea55182a7e81adc6a0b395c") } > db.demo686.insertO

  2. 請求先住所がドキュメントの配送先住所と等しい「場所」を見つけるためのMongoDBクエリ?

    同等性を確認してドキュメントをフェッチするには、MongoDBの$whereを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo589.insertOne({deliveryAddress:"US",billingAddress:"UK"});{    "acknowledged" : true, "insertedId" : ObjectId("5e92c117fd2d90c177b5bccc") } > db.demo589.