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

Bagaimana cara menghitung kemunculan dalam dokumen bersarang di mongodb?

Ada beberapa cara untuk mendekati ini tergantung pada seberapa banyak data yang perlu Anda proses. Anda dapat menggunakan Kerangka Agregasi di MongoDB 2.2+, atau mungkin Peta/Kurangi . Lihat Perbandingan Perintah Agregasi untuk ringkasan fitur dan batasan.

Berikut ini contoh menggunakan Kerangka Agregasi:

db.fruit.aggregate(
    // Limit matching documents (can take advantage of index)
    { $match: {
        "_id" : ObjectId("52c1d909fc7fc68ddd999a73")
    }},

    // Unpack the question & answer arrays
    { $unwind: "$questions" },
    { $unwind: "$questions.answers" },

    // Group by the answer values
    { $group: {
        _id: "$questions.answers.answer",
        count: { $sum: 1 }
    }}
)

Untuk dokumen sampel Anda, ini mengembalikan:

{
    "result" : [
        {
            "_id" : "banana",
            "count" : 1
        },
        {
            "_id" : "apple",
            "count" : 2
        }
    ],
    "ok" : 1
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Dapatkan semua kemungkinan kombinasi dari array di agregasi MongoDB

  2. Bagaimana cara menekan kolom di mongodb menggunakan driver Java?

  3. MongoDB, Java:Ambil properti tanggal sebagai UTC

  4. Dapatkan dokumen yang diperbarui di MongoDB

  5. InsertMany tidak berfungsi di mongodb