使用 MGO 按 ID 查找
MGO 提供两种按 ID 查找数据的方法:FindId() 和 Find()。
使用FindId()
使用 FindId() 时,仅传递 ID 值:
err2 := c.FindId(bson.ObjectIdHex("58593d1d6aace357b32bb3a1")).One(&data)
使用 Find()
与Find(),指定ID字段name:
err2 := c.Find(bson.M{"_id": bson.ObjectIdHex("58593d1d6aace357b32bb3a1")}).One(&data)
处理错误
如果没有返回错误,则说明找到了文档。如果您始终看到零值(表示缺少文档),请确保 ID 字段名称与 MongoDB 中存储的字段名称匹配。使用结构体标签来映射字段名称(例如 bson:"myid")。
性能优化
为了获得更好的性能,连接到 MongoDB 服务器一次并重复使用session 而不是每次都建立一个新的连接。详情请参阅文档。
以上是如何使用MongoDB的MGOGO库通过ID高效查找文档?的详细内容。更多信息请关注PHP中文网其他相关文章!