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

MongoDB memproyeksikan dokumen dengan jumlah lebih dari 2

Anda perlu memproyeksikan bidang lain dan $match pipeline hanya perlu melakukan kueri pada bidang yang baru dibuat untuk memfilter dokumen berdasarkan ukuran array. Sesuatu seperti berikut ini akan berfungsi:

db.entity.aggregate([
    {
        "$project": {
            "Line": 1,
            "LineStart": 1, "SSCEXPEND": 1,
            "SSCEXPEND_count": { "$size": "$SSCEXPEND" }
         }
    },
    {
        "$match": {
            "SSCEXPEND_count": { "$gte": 2 }
         }
    }
])

Contoh Keluaran :

/* 0 */
{
    "result" : [ 
        {
            "_id" : "201503110040020021",
            "Line" : "1",
            "LineStart" : ISODate("2015-03-11T06:49:35.000Z"),
            "SSCEXPEND" : [ 
                {
                    "Secuence" : 10,
                    "Title" : 1
                }, 
                {
                    "Secuence" : 183,
                    "Title" : 613
                }
            ],
            "SSCEXPEND_count" : 2
        }
    ],
    "ok" : 1
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Menyimpan skema dan fungsi formulir dalam Database

  2. Mengubah skrip penyemaian luwak menjadi janji

  3. konfigurasi ukuran ruang lama maks di Nodejs

  4. PyMongo:Apa yang terjadi pada kursor ketika no_cursor_timeout=True

  5. MongoDB &Meteor - Permintaan untuk mendorong ke array bersarang tidak berfungsi, tidak ada kesalahan yang dilemparkan