[Go] gorm执行原生sql语句
2023-02-18 15:36:12 时间
当有复杂sql语句的时候,我们需要执行原生sql语句,这样更加方便
比如下面的这条sql语句
//查询每天条数 type EveryDayNum struct { Day string `json:"day"` Num int64 `json:"num"` } func CountVisitorsEveryDay(toId string) []EveryDayNum { var results []EveryDayNum DB.Raw("select DATE_FORMAT(updated_at,'%Y-%m-%d') as day ,"+ "count(*) as num from visitor where to_id=? group by day order by day desc limit 30", toId).Scan(&results) return results }
只需要拿着数据库对象去.Raw(原生sql).Scan()就可以了
Scan的参数是一个结构体引用,所以一定要定义好结构体接收数据才行
相关文章
- [Linux] ubuntu 32位 i686 安装docker
- [Linux] Ubuntu 19.10 server 配置静态IP
- [Git] git checkout 恢复未add的修改文件
- [Linux] 解决virtualbox共享文件夹没有访问权限的问题
- [Linux] VirtualBox的ubuntu系统与宿主机共享目录
- [Go] GODEBUG=inittrace=1 查看所有执行的init函数
- [Go] go中init函数的执行顺序
- [Go] 获取Go二进制文件的真正执行路径os.Args
- [Go]解决goland terminal 环境变量不更新
- [Linux] 利用tcpdump和strace进行debug
- [Go]解决使用cgo时 exec:"gcc" executable file not found in %PATH%报错问题
- [Go] 使用读写锁对map资源进行安全处理
- [Linux] 使用awk比较两个文件的内容
- [Go] go test单元测试执行指定测试函数
- [Go]TCP服务中增加消息队列与工作池
- [Go]TCP服务中读写进行协程分离
- [Go] 轻量服务器框架tcp的粘包问题 封包与拆包
- [GO] golang中的变量与指针
- [GO] golang 中main包下入口文件调用其它go文件函数出现undefined
- [Go] 轻量服务器框架全局配置的实现以及解析json