使用 mgo 在 golang 中来自 Mongodb 的 Select 列
Select column from Mongodb in golang using mgo
据我所知,我们可以使用
> db['twitter-3'].find({}, {"text": 1})
至select collection中的所有文本。
我们如何使用mgo在golang中查找特定字段?
我试过了
var result []string
err = conn.Find(bson.M{}, bson.M{"text", 1}).All(&result)
但这是不正确的。
使用查询Select方法指定字段return:
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)
}
在这个例子中,我用一个选定的字段声明了一个匿名类型。可以对所有文档字段使用一个类型。
到select多个字段:
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)
}
var result interface{}
err = c.Find(nil).Select(bson.M{"text": 1}).All(&result)
据我所知,我们可以使用
> db['twitter-3'].find({}, {"text": 1})
至select collection中的所有文本。
我们如何使用mgo在golang中查找特定字段? 我试过了
var result []string
err = conn.Find(bson.M{}, bson.M{"text", 1}).All(&result)
但这是不正确的。
使用查询Select方法指定字段return:
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)
}
在这个例子中,我用一个选定的字段声明了一个匿名类型。可以对所有文档字段使用一个类型。
到select多个字段:
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)
}
var result interface{}
err = c.Find(nil).Select(bson.M{"text": 1}).All(&result)