Menyoal MongoDB daripada Go dengan Array ID Objek
Dalam MongoDB, mendapatkan semula dokumen berdasarkan pengecam objeknya yang disimpan dalam tatasusunan boleh dicapai dengan pengendali $in dan pakej mgo dan bson.
Melaksanakan Pertanyaan:
Untuk melaksanakan pertanyaan dengan betul, anda perlu memastikan bahawa pengecam objek dalam tatasusunan berada dalam format yang betul. Jika dokumen disimpan dengan ID rentetan, pertanyaan yang anda berikan adalah tepat:
<code class="go">query := bson.M{"_id": bson.M{"$in": ids}} c.Find(query).All()</code>
Walau bagaimanapun, jika pengecam objek adalah dalam bentuk rentetan berkod hex (cth., "543d171c5b2c12420dd016"), anda perlu untuk menukarnya kepada objek bson.ObjectId sebelum menggunakannya dalam pertanyaan. Begini cara anda boleh melakukannya:
<code class="go">oids := make([]bson.ObjectId, len(ids)) for i := range ids { oids[i] = bson.ObjectIdHex(ids[i]) } query := bson.M{"_id": bson.M{"$in": oids}}</code>
Pengubahsuaian ini memastikan bahawa pertanyaan sepadan dengan pengecam objek yang disimpan dalam tatasusunan sebagai objek bson.ObjectId.
Atas ialah kandungan terperinci Bagaimana untuk Menyoal MongoDB dari Go dengan Array ID Objek?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!