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

Operator '$size' tidak valid dalam agregasi

Alasannya adalah karena $size operator agregasi array baru di MongoDB 2.6 dan Anda sebenarnya menjalankan MongoDB 2.4.

Saya sarankan Anda memutakhirkan server MongoDB Anda ke setidaknya 3.0. Tetapi jika karena alasan tertentu Anda tidak ingin meningkatkan versi sekarang, Anda perlu $unwind larik "players" dan $group oleh "_id" lalu kembalikan hitungan menggunakan $sum operator akumulator.

heh = list(db.events.aggregate(
    [
        {"$match": {"status": 'start'}},
        {"$group": {"_id": "$eventName", "players": {"$addToSet": "$uid"}}},
        {"$unwind": "$players"},
        {"$group": {"_id": "$_id", "Count": {"$sum": 1}}},
    ]))



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Menggunakan fungsi MongoDB .findOne() dengan nilai dokumen bersarang

  2. ServerSelectionTimeoutError errno 11001 getaddrinfo gagal python

  3. Menjalankan mongodb di ubuntu 16.04 LTS

  4. Mongoosastic - { [Kesalahan:Tidak ada koneksi yang hidup] pesan:'Tidak ada koneksi yang hidup' }

  5. Istirahat data starter boot musim semi, batasan @Notnull tidak berfungsi