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

Pipa agregasi Mongodb cara membatasi push grup

Misalkan koordinat kiri bawah dan koordinat kanan atas berturut-turut adalah [0, 0] dan [100, 100] . Dari MongoDB 3.2 Anda dapat menggunakan $slice operator untuk mengembalikan subset dari array yang Anda inginkan.

db.collection.aggregate([
    { "$match": { 
        "loc": { 
            "$geoWithin":  { 
                "$box": [ 
                    [0, 0], 
                    [100, 100]
                ]
            }
        }}
    }},
    { "$group": { 
        "_id": "$name",
        "submitted": { "$max": "$submitted" }, 
        "preview": { "$first": "$preview" }
        "locs": { "$push": "$loc" }
    }}, 
    { "$project": { 
        "locs": { "$slice": [ "$locs", 5 ] },
        "preview": 1,
        "submitted": 1
    }},
    { "$limit": 10 }
])


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Permintaan tanggal dengan ISODate di mongodb sepertinya tidak berfungsi

  2. Tambahkan Validator baru ke Koleksi yang Ada

  3. Menginstal MongoDB di Ubuntu 16.04

  4. MongoDB:Bagaimana cara memperbarui satu subelemen dalam array, yang direferensikan oleh indeks di dalam array?

  5. Cara Mudah Mengelola Pembaruan Basis Data dan Patch Keamanan