Puede recuperar un solo documento de una colección mediante el uso de
FindOne() .
Ejemplo
Tip
Lea el Ejemplos de uso para aprender a ejecutar este ejemplo.
Este ejemplo utiliza la siguiente estructura Restaurant como modelo para los documentos de la colección restaurants:
type Restaurant struct { ID primitive.ObjectID `bson:"_id"` Name string RestaurantId string `bson:"restaurant_id"` Cuisine string Address interface{} Borough string Grades []interface{} }
El siguiente ejemplo coincide con los documentos de la colección restaurants en los que name es "Bagels N Buns" y devuelve el primer documento coincidente:
coll := client.Database("sample_restaurants").Collection("restaurants") // Creates a query filter to match documents in which the "name" is // "Bagels N Buns" filter := bson.D{{"name", "Bagels N Buns"}} // Retrieves the first matching document var result Restaurant err = coll.FindOne(context.TODO(), filter).Decode(&result) // Prints a message if no documents are matched or if any // other errors occur during the operation if err != nil { if err == mongo.ErrNoDocuments { return } panic(err) }
Ver una ejemplo completamente ejecutable
Resultado esperado
Al ejecutar el ejemplo completo se imprime el siguiente documento, que se almacena en la variable result como una estructura Restaurant:
// results truncated { "ID": "5eb3d668b31de5d588f42950", "Name": "Bagels N Buns", "RestaurantId": "40363427" "Address": [...], "Borough": "Staten Island", "Cuisine": "Delicatessen", "Grades": [...] }
Información Adicional
Para obtener más información sobre cómo especificar filtros de consulta y manejar posibles errores, consulte Recuperar datos.
Para obtener más información sobre los operadores de consulta, consulte la documentación de referencia de operadores de consulta de MongoDB.