当前位置: > > > > Sqlboiler 仅获取所需的列
来源:stackoverflow
2024-05-01 20:54:32
0浏览
收藏
从现在开始,努力学习吧!本文《Sqlboiler 仅获取所需的列》主要讲解了等等相关知识点,我会在中持续更新相关的系列文章,欢迎大家关注并积极留言建议。下面就先一起来看一下本篇正文内容吧,希望能帮到你!
问题内容
我正在尝试遵循 sqlboiler (https://github.com/volatiletech/sqlboiler) 中的示例。但找不到一种方法来只获取 select 语句中查询的列?
users, err := models.Users( Select("id", "name"), Where("age > ?", 30), ).All(ctx, db)
在此示例中,.all
返回包含未查询的列的空/nil 值的整个元组。我想知道是否有一种方法可以返回查询列的映射/列表(或任何相关的数据结构/格式)。谢谢!
解决方案
您获得了所有字段,因为您获得了 models.user
的实例,其中包含所有字段,无论您是否想要它们。
您可以做的一件事是编写自己的精简 user
结构,并绑定到该结构。
type LiteUser struct { ID int `boil:"id"` Name string `boil:"name"` } var users []*LiteUser err := models.Users( Select("id", "name"), Where("age > ?", 30), ).Bind(ctx, db, &users)
好了,本文到此结束,带大家了解了《Sqlboiler 仅获取所需的列》,希望本文对你有所帮助!关注公众号,给大家分享更多Golang知识!