使用 GORM进行多表连接查询 实践 | 青训营

前言

最近一直跟着青训营学习,然后自己也动手搭建了一个项目,下面就来对GORM这个工具的使用做一个简单的总结和小笔记

正文

一、引入GORM

go 复制代码
go get -u gorm.io/gorm

二、配置数据库

编写yml文件

创建一个结构体,用来读取配置文件中的数据库信息

创建一个init方法,进行数据库的初始化

最后在主函数中,加载配置

三、进行多表联查

我们这里举一个简单的例子,比如查询视频表和用户表的相关信息,进行左连接,查出视频信息以及视频发布者的信息,通过视频表中记录的创建用户id来进行关联

这里主要是根据GORM的文档来进行编写:

Table表示要查询的表

Select表示要查询的字段

Joins表示要连接的表以及连接的条件

Where表示最后的一个条件

最后我们可以通过Scan来绑定查询的结果

注意这里要传入的是指针类型,而不是变量,否则会报错

这样就可以完成一个语句的查询

当然也可以直接使用Raw这种方式,这种方式就是简单粗暴,直接用字符串拼接sql,就是看大家的选择了,个人认为,还是上面的这种方式比较好

因为直接拼接字符串的话,还得考虑空格问题,否则会导致最后出来的sql报错

结语

今天开始最后的项目阶段了,希望可以和自己的组员好好配合,做出一个不错的项目,为这次青训营交出一个满意的答卷!

相关推荐
静水流深39720 天前
03 模型IO| 豆包MarsCode AI刷题
青训营笔记
用户2478418600221 天前
第七次算法笔记 | 豆包MarsCode AI刷题
青训营笔记
幻625 天前
小S的倒排索引 | 豆包MarsCode AI刷题
青训营笔记
用户826014428301 个月前
469. 环形数组最大子数组和问题
青训营笔记
用户605721920981 个月前
奇妙货币交易问题 | 豆包MarsCode AI刷题
青训营笔记
我明天再来学Web渗透1 个月前
“抖音互联网架构分析及高可用系统构建思考”(方向三)| 豆包MarsCode AI刷题
青训营笔记
用户302133066201 个月前
第三次刷题 | 豆包MarsCode AI刷题
青训营笔记
用户9105973027701 个月前
CSS详解| 豆包MarsCode AI刷题
青训营笔记
huyck1 个月前
伴学笔记1|豆包MarsCode AI 刷题
青训营笔记
用户19700900815381 个月前
实现一个TodoList | 青训营 x 豆包MarsCode技术训练营
青训营笔记