Que yo sé, se puede utilizar

> db['twitter-3'].find({}, {"text": 1})

para seleccionar todos los textos de la colección.

¿Cómo podemos utilizar el mgo para encontrar el campo específico en golang?
Traté de

var result []string
err = conn.Find(bson.M{}, bson.M{"text", 1}).All(&result)

Pero no es correcto.

InformationsquelleAutor Wyatt | 2015-06-29

3 Comentarios

  1. 22

    Utilizar la consulta Seleccione método para especificar los campos de volver:

    var result []struct{ Text string `bson:"text"` }
    err := c.Find(nil).Select(bson.M{"text": 1}).All(&result)
    if err != nil {
        //handle error
    }
    for _, v := range result {
         fmt.Println(v.Text)
    }

    En este ejemplo, he declarado un tipo anónimo con el campo seleccionado. Está bien usar un tipo con todos los campos de los documentos.

    • En la estructura, lo que hace bson:"text" representan? ¿Hay alguna referencia que puedo revisar para tener una mejor comprensión de esto?
    • Consulte el hijo del paquete documentación para obtener información sobre cómo utiliza el paquete de campo etiquetas.
    • Gracias! ¿Cómo hace uno para seleccionar varias columnas? Sólo añadir Seleccione(bson.M{«text»: 1, «anotherColumn»:1}) no funciona.
    • por qué it returns intipo de mapa[][] ` no como json
  2. 2

    para seleccionar varios campos:

    var result []struct{
        Text string `bson:"text"`
        Otherfield string `bson:"otherfield"`
    }
    
    err := c.Find(nil).Select(bson.M{"text": 1, "otherfield": 1}).All(&result)
    if err != nil {
       //handle error
    }
    for _, v := range result {
        fmt.Println(v.Text)
    }

Dejar respuesta

Please enter your comment!
Please enter your name here