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

Temukan semua dokumen yang berbagi maks(nilai) yang ditemukan dalam langkah agregat

Anda dapat melakukan ini dengan mengelompokkan di num_sold dan kemudian menggunakan $sort dan $limit tahapan pipa untuk mendapatkan hanya dokumen dengan nilai maksimum:

db.t.aggregate([
    // Group by num_sold, assembling an array of docs with each distinct value.
    {$group: {
        _id: '$num_sold',
        docs: {$push: '$$ROOT'}
    }},
    // Sort the groups by _id descending to put the max num_sold group first.
    {$sort: {_id: -1}},
    // Return just the first (max num_sold) group of docs.
    {$limit: 1}
])

Keluaran:

{ 
    "_id" : 55.0, 
    "docs" : [
        {
            "_id" : ObjectId("5726a62879ce3350ff8d607e"), 
            "item" : "Orange", 
            "num_sold" : 55.0
        }, 
        {
            "_id" : ObjectId("5726a62879ce3350ff8d607f"), 
            "item" : "Peach", 
            "num_sold" : 55.0
        }
    ]
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bagaimana cara mengganti substring dalam dokumen mongodb

  2. fungsi $week dan hari pertama dalam seminggu dalam agregasi

  3. bagaimana cara menggabungkan berbagai hasil luwak ke satu JSON Array untuk ditampilkan di DataTable?

  4. Apakah saya perlu luwak dengan graphql?

  5. Pencarian teks MongoDb dengan dukungan bahasa