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

kueri agregasi mongo dengan driver mgo

Contoh-contoh pada dokumen akan cukup untuk memulai. Namun, jika Anda tidak terbiasa dengan golang, $cond bagian bisa menjadi sedikit rumit. Lihat contoh kode di bawah ini:

    collection := session.DB("dbName").C("devices")

    stage_match := bson.M{"$match":bson.M{"userId":"v73TuQqZykbxFXsWo", "state": true}}

    condition_weight := []interface{}{bson.M{"$or": []bson.M{
                       bson.M{"$eq": []string{"$categorySlug", "air_fryer"}},
                       bson.M{"$eq": []string{"$categorySlug", "iron"}},
    }}, 0, 1}

    stage_project:= bson.M{"$project": bson.M{"userId":1, "categorySlug":1, "weight": condition_weight}}

    stage_sort := bson.M{"$sort": bson.M{"weight":1}}

    stage_limit := bson.M{"$limit": 10}

    pipe := collection.Pipe([]bson.M{stage_match, stage_project, stage_sort, stage_limit})

Lihat juga mgo:ketik Pipa




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara Menghubungkan Ke Deployment MongoDB Anda Menggunakan Robo 3T GUI

  2. Cara menanyakan kunci dinamis - desain skema mongodb

  3. Cara menulis larik asosiatif kosong ({}) ke MongoDB dari PHP

  4. Bagaimana cara mendapatkan hasil cetak untuk men-debug peta/mengurangi di Mongoid?

  5. Pertanyaan tentang safe=Parameter benar untuk operasi pembaruan mongodb