首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在golang中使用mgo从Mongodb中选择列

在golang中使用mgo从Mongodb中选择列
EN

Stack Overflow用户
提问于 2015-06-29 21:05:57
回答 3查看 17.1K关注 0票数 16

据我所知,我们可以使用

代码语言:javascript
复制
> db['twitter-3'].find({}, {"text": 1})

要选择集合中的所有文本,请执行以下操作。

我们如何使用mgo在golang中找到特定的字段?我试过了

代码语言:javascript
复制
var result []string
err = conn.Find(bson.M{}, bson.M{"text", 1}).All(&result)

但这是不正确的。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-06-29 21:25:30

使用query Select方法指定要返回的字段:

代码语言:javascript
复制
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)
}

在本例中,我使用一个选中的字段声明了一个匿名类型。可以将一个类型与所有文档字段一起使用。

票数 25
EN

Stack Overflow用户

发布于 2018-02-24 01:16:44

要选择多个字段,请执行以下操作:

代码语言:javascript
复制
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)
}
票数 2
EN

Stack Overflow用户

发布于 2019-05-20 10:23:47

代码语言:javascript
复制
var result interface{}
err = c.Find(nil).Select(bson.M{"text": 1}).All(&result)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31116528

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档