gorm查询结果到基本类型、map
gorm是一个Go的orm框架,之前学到的都是用结构体去查,今天经过测试,发现可以直接用基础数据类型或者map来接查询的结果;
我现在这里有一个结构体,学生:
type Student struct {
gorm.Model
Name string
Age uint
}
然后插入三条数据,开始我们的测试
查询name和age
var name string
var age uint
var names []string
var ages []uint
db.Model(Student{}).Select("name").First(&name)
db.Model(Student{}).Select("age").First(&age)
db.Model(Student{}).Select("name").Find(&names)
db.Model(Student{}).Select("age").Find(&ages)
fmt.Println(name,age)
fmt.Println(names)
fmt.Println(ages)
使用map查询
Gorm文档中提到允许扫描结果至map[string]interface{}或[]map[string]interface{}
我们通过代码试一下
var res1 map[string]interface{}
var res2 []map[string]interface{}
var res3 []map[string]interface{}
db.Model(Student{}).First(&res1)
db.Model(Student{}).Find(&res2)
db.Model(Student{}).Select("name","age").Find(&res3)
fmt.Println(res1)
fmt.Println(res2)
fmt.Println(res3)
第一个查询,查出第一行然后将信息写入到map中
第二个查询,查出所有行,放入一个map切片中,一行一个map
第三个查询,指定了查哪些内容
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)