当前位置:网站首页>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
如此便实现了需求所需。
拓展
两表联表查询具体可以分为七种,见网图如下:

边栏推荐
- OpenCV:10特征检测
- Xiaohei leetcode surfing: 94. Inorder traversal of binary tree
- What is next-generation modeling (with learning materials)
- ansible学习笔记分享-含剧本示例
- matlab中rcosdesign函数升余弦滚降成型滤波器
- 头脑风暴:完全背包
- mysql基础
- 【论文笔记】—低照度图像增强—Unsupervised—EnlightenGAN—2019-TIP
- Statistical words (DAY 101) Huazhong University of Science and Technology postgraduate examination questions
- uniapp动态实现滑动导航效果demo(整理)
猜你喜欢
情人节---快来学习一下程序员的专属浪漫吧

2022 Niu Ke Summer Multi-School Training Camp 5 (BCDFGHK)

Privacy Computing Overview

First, the basic concept of reptiles

10 个关于 Promise 和 setTimeout 知识的面试题,通过图解一次说透彻

MongoDB permission verification is turned on and mongoose database configuration

【LeetCode】图解 904. 水果成篮

招标公告 | 海纳百创公众号运维项目

Mathematical Principles of Matrix

【无标题】线程三连鞭之“线程池”
随机推荐
安全软件 Avast 与赛门铁克诺顿 NortonLifeLock 合并案获英国批准,市值暴涨 43%
【论文笔记】—低照度图像增强—Unsupervised—EnlightenGAN—2019-TIP
【LeetCode】滑动窗口题解汇总
IDEA 文件编码修改
MongoDB permission verification is turned on and mongoose database configuration
Ab3d.PowerToys and Ab3d.DXEngine Crack
Implementation principle of golang coroutine
~ hand AHB - APB Bridge 】 【 AMBA AHB bus
手写分布式配置中心(1)
Some thoughts on writing
First, the basic concept of reptiles
矩阵数学原理
SQL关联表更新
美团二面:Redis与MySQL双写一致性如何保证?
uniapp横向选项卡(水平滚动导航栏)效果demo(整理)
The role of @Async annotation and how to implement asynchronous listening mechanism
网站最终产品页使用单一入口还是多入口?
4 - "PyTorch Deep Learning Practice" - Backpropagation
NebulaGraph v3.2.0 Release Note, many optimizations such as the performance of querying the shortest path
Day118. Shangyitong: order list, details, payment