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

Temukan berdasarkan id dengan mgo

Anda juga menggunakan Collection.FindId() dan kemudian Anda hanya memberikan nilai id, atau Anda menggunakan Collection.Find() dan kemudian Anda harus menentukan nilai dengan nama bidang juga:

err2 := c.FindId(bson.ObjectIdHex("58593d1d6aace357b32bb3a1")).One(&data)

// OR
err2 := c.Find(bson.M{"_id": bson.ObjectIdHex("58593d1d6aace357b32bb3a1")}).
    One(&data)

Jika Anda tidak mendapatkan kesalahan, itu berarti dokumen telah ditemukan.

Jika Anda selalu melihat 0 dicetak (sebagai nilai id_cookie.IdCookie field), itu berarti field dalam dokumen yang menyimpan id ini memiliki nama yang berbeda.

Gunakan tag struct untuk memberi tahu bagaimana itu disimpan di MongoDB Anda. Misalnya. jika di MongoDB Anda disebut "myid" , Anda dapat memetakannya seperti ini:

type id_cookie struct {
    IdCookie int `bson:"myid"`
}

Perhatikan juga bahwa Anda tidak boleh terhubung ke server MongoDB setiap kali Anda ingin menanyakan beberapa data, alih-alih sambungkan sekali, dan cukup gunakan kembali sesi. untuk detail lihat:mgo - kinerja kueri tampaknya lambat secara konsisten (500-650 md)




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Pembaruan MongoDB()

  2. Menggunakan fungsi JavaScript yang tersimpan dalam pipa Agregasi, MapReduce atau runCommand

  3. Panduan untuk MongoDB dengan Java

  4. Menyimpan File di MongoDB dengan GridFS

  5. Ganti nama Bidang dalam Koleksi MongoDB