首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有一种直接映射的方法来构造Go中Couchbase N1QL查询的结果?

是否有一种直接映射的方法来构造Go中Couchbase N1QL查询的结果?
EN

Stack Overflow用户
提问于 2022-03-14 15:13:29
回答 1查看 176关注 0票数 1

当我使用*运算符选择所有元素实现查询时,查询不会映射到结构。

代码语言:javascript
复制
query := gocb.NewN1qlQuery("SELECT * FROM `item-bucket` WHERE itemBarcode=$1")
queryParams = append(queryParams, itemBarcode)
rows, err := itemBucket.ExecuteN1qlQuery(query, queryParams)

var row ItemEntity
for rows.Next(&row) {
    fmt.Printf("Results: %+v\n", row)
}

但是,当我将每个字段添加到查询中时,它将被直接映射。

代码语言:javascript
复制
query := gocb.NewN1qlQuery("SELECT itemBarcode, color, price FROM `item-bucket` WHERE itemBarcode=$1")
queryParams = append(queryParams, itemBarcode)
rows, err := itemBucket.ExecuteN1qlQuery(query, queryParams)

var row ItemEntity
for rows.Next(&row) {
    fmt.Printf("Results: %+v\n", row)
}

是否有一种使用*操作符直接映射到struct的方法?

该项目的Go版本为1.6

EN

回答 1

Stack Overflow用户

发布于 2022-03-15 03:00:16

查看一下[医]平方,其中他们的自述文件包含使用像SELECT * FROM x这样的查询的示例。如果数据库列名与结构字段名不直接匹配,则可以将它们指定为结构标记,如下所示:

代码语言:javascript
复制
type ItemBucket struct {
    ItemBarcode string `db:"itemBarcode"`
    Color       string `db:"last_name"`
    ...
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71470040

复制
相关文章

相似问题

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