MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Cara mengontrol definisi proyeksi di MongoDb menggunakan C#

Ini adalah mongo permintaan shell dengan MongoDB v4.2.8.

Pertimbangkan dokumen masukan ini:

{
        "_id" : 1,
        "name" : "john",
        "stuff" : {
                "mycolor" : "red",
                "fruit" : "apple",
                "mybook" : "programming gems",
                "movie" : "star wars"
        }
}

Tujuannya adalah untuk memproyeksikan name dan stuff bidang, tetapi stuff dengan hanya nama bidang yang dimulai dengan "my" .

Kueri agregasi:

db.test.aggregate([
  { 
      $project: { 
          _id: 0, 
          name: 1, 
          stuff: { 
              $filter: { 
                  input: { $objectToArray: "$stuff" }, 
                  as: "stf", 
                  cond: { $regexMatch: { input: "$$stf.k" , regex: "^my" } }
              }
          }
      }
  },
  { 
      $addFields: { stuff: { $arrayToObject: "$stuff" } } 
  }
])

Dan, keluaran yang diproyeksikan:

{
        "name" : "john",
        "stuff" : {
                "mycolor" : "red",
                "mybook" : "programming gems"
        }
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Masalah pembaruan versi dokumen MongoDB dengan JaVers

  2. Mongo Query gagal dengan kode kesalahan 13 dan pesan kesalahan 'tidak diotorisasi'

  3. Membandingkan Kinerja MongoDB di Cloud Publik:AWS, Azure &DigitalOcean

  4. tidak dapat terhubung ke mongodb yang dihosting di server jauh menggunakan monk

  5. menghapus scanAndOrder :true dalam hasil kueri MongoDB saya