当前位置:网站首页>gorm联表查询-实战
gorm联表查询-实战
2022-08-05 00:11:00 【景行三千】
gorm联表查询-实战
缘起
- 做一个政府项目遇到的一个项目需求所需要的技术
- 需求背景大概是这样:有一张
workers
表,一张worker_records
表,工作人员的信息记录在workers表,同时当工作人员上班时候会打卡,而打卡记录就在这个worker_records表
workers表部分需要用到字段如下 | worker_records表部分需要用到字段如下 |
---|---|
gzryxm——意为:工作人员姓名 | gzrxm——意为:工作人姓名 |
gzrysjh——意为:工作人员手机号 | gzrsjh——意为:工作人手机号 |
gzrysfz——意为:工作人员身份证 | gzrsfz——意为:工作人身份证 |
身份证号唯一
需求:拿到未打卡人的姓名,手机号,身份证号
画出图就是以下这样
gorm实现
db.Model(&Worker{
}).
Select("workers.csbh,workers.gzryxm,workers.gzrysjh,workers.gzrysfz").
Joins("left join worker_records on workers.gzrysfz = worker_records.gzrsfz").
Where("worker_records.gzrsfz", nil).
Scan(¬ClockedInPeopleAll)
MySQL原生实现
SELECT w.gzryxm,w.gzrysjh,w.gzrysfz
FROM workers w
LEFT JOIN worker_records wr
ON w.gzrysfz = wr.gzrsfz
WHERE wr.gzrsfz IS NULL
如此便实现了需求所需。
拓展
两表联表查询具体可以分为七种,见网图如下:
边栏推荐
猜你喜欢
情人节---快来学习一下程序员的专属浪漫吧
统计单词(DAY 101)华中科技大学考研机试题
Bidding Announcement | Operation and Maintenance Project of Haina Baichuang Official Account
刘润直播预告 | 顶级高手,如何创造财富
电赛必备技能___定时ADC+DMA+串口通信
Getting started with 3D modeling for games, what modeling software can I choose?
游戏3D建模入门,有哪些建模软件可以选择?
KT6368A Bluetooth certification problem_FCC and BQB_CE_KC certification or other instructions
Statistical words (DAY 101) Huazhong University of Science and Technology postgraduate examination questions
如何写好测试用例
随机推荐
IDEA 文件编码修改
标识符、关键字、常量 和变量(C语言)
Huggingface入门篇 II (QA)
头脑风暴:完全背包
游戏3D建模入门,有哪些建模软件可以选择?
Couple Holding Hands [Greedy & Abstract]
《MySQL入门很轻松》第2章:MySQL管理工具介绍
uinty lua 关于异步函数的终极思想
KT6368A Bluetooth certification problem_FCC and BQB_CE_KC certification or other instructions
MVCC是什么
3. Actual combat---crawl the result page corresponding to Baidu's specified entry (a simple page collector)
Flutter启动流程(Skia引擎)介绍与使用
仿网易云音乐小程序-uniapp
~ hand AHB - APB Bridge 】 【 AMBA AHB bus
没有这些「伪需求」,产品经理的 KPI 怎么完成?
uniapp动态实现滑动导航效果demo(整理)
矩阵数学原理
Chinese and Japanese color style
中日颜色风格
VMware NSX 4.0 -- 网络安全虚拟化平台