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

Proyeksi bersyarat di mongodb menggunakan c# driver

Ini adalah bagaimana saya akan melakukannya. Agar Anda dapat menghapus "artefak" id grup, Anda harus memproyeksikan keluaran grup dan tidak menyertakan id.

db.getCollection('MyClass').aggregate( [
{$unwind: '$Class'}, 
{ $project : {  Name : 1 , 
                Occupation : 1, 
                Class : {
                    ClassType:1, 
                    Professors:{
                        $cond: {
                            if: { $eq: ["$Class.ClassType", "English"] },
                            then: [],
                            else: "$Class.Professors"
                                }
                    }
                }
            } 
    },
{$group: {
    _id: '$_id',
    Name: {$first: '$Name'},
    Occupation: {$first: '$Occupation'},
    Class: {$push: '$Class'}
}},

] )




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Agregat Mongodb, grup, dan hitung instance

  2. Hentikan mongodb dari mengabaikan karakter khusus?

  3. Memulihkan dump basis data dari versi mongo yang lebih lama ke versi mongo yang baru

  4. hubungkan mongodb dengan djongo (Django)

  5. Cara menggunakan $query, $hint atau $explain dari Java