MySQL的新知识:

之前数据库没学好,不知道LEFT JOIN ON后边可以加条件

首先业务是有个A表,然后会依据A表信息来在B表生成一条对应数据,

操作时候展示A表数据,如果B表已经有对应数据,显示数据,如果没有,则可以新增数据。

B表中有保存A表的ID。

SELECT

a.id AS "a.id",

a.CODE AS "a.code",

b.id AS "b.id",

b.CODE AS "b.code",

b.a_id AS "b.aID"

FROM

a

LEFT JOIN b ON b.a_id = a.id

查询结果:

现在要求是要B的数据下游会操作,如果数据有问题就会作废掉,这里就用code来标识,当code为1时,就说明这条数据是作废的。

在上游的显示中,就是A依然有数据,但B为空。

最开始在where条件中写,SQL:

SELECT

a.id AS "a.id",

a.CODE AS "a.code",

b.id AS "b.id",

b.CODE AS "b.code",

b.a_id AS "b.aID"

FROM

a

LEFT JOIN b ON b.a_id = a.id

WHERE

b.CODE = '0'

查询结果:

很明显就数据丢了一条,达不到目的,突然间一个思路,where条件能否放到LEFT JOIN ON的后边,试了一下,效果有了:

SELECT

a.id AS "a.id",

a.CODE AS "a.code",

b.id AS "b.id",

b.CODE AS "b.code",

b.a_id AS "b.aID"

FROM

a

LEFT JOIN b ON b.a_id = a.id

AND b.CODE = '0'

查询结果:

还是第一次意识到LEFT JOIN ON后边的条件可以用AND来实现多个

mysql 左关联查询_MySQL 左关联右表条件查询相关推荐

  1. mysql 按月分表的查询_mysql按月分表, 组合查询

    每个月月底最后一天建好下个月的空表 或每年底建1到12月的空表 , table_201901,table_201902,table_201903 增加记录不需要修改,insert到当月对应表就好了. ...

  2. MySQL基础(八):模糊查询的SQL语句、where条件查询、比较运算符查询、逻辑运算符查询、模糊查询、范围查询、空判断查询

    文章目录 where条件查询 1. where条件查询的介绍 2. 比较运算符查询 3. 逻辑运算符查询 4. 模糊查询 5. 范围查询 6. 空判断查询 7. 小结 where条件查询 学习目标 能 ...

  3. oracle表连接查询逗号隔开_Oracle多表连接查询

    连接:将一张表中的行按照某种条件和另一张表中的行连接起来形成一个新行的的过程. 根据连接查询返回的结果,分为3类: 内连接(inner join) 外连接(outer join) 交叉连接(cross ...

  4. SQL语法之基础查询(进阶1)and条件查询(进阶2)

    SQL语法体系学习笔记 SQL语法之基础查询(进阶1)and条件查询(进阶2) SQL语法之排序查询(进阶3)and常见函数(进阶4) SQL语法之分组函数,分组查询(进阶5)and连接查询(sql9 ...

  5. mysql与配偶同性_mysql 左,右,内连接

    左右连接 全相乘方法(效率很低) mysql> select * from test10; +------+-------+ | id   | sname | +------+-------+ ...

  6. mysql关联表分页查询_MySQL一对多分页查询-主表关联表条件查询问题

    文章目录 1 摘要 2 情景复现 2.1 数据模型 2.2 核心代码 2.3 测试数据 2.4 拓展一点 1 摘要 分页查询是后台项目中最常见的一种操作,在一对多(one to many)的关系表中, ...

  7. mysql同张表关联多次查询_MySQL多次单表查询和多表联合查询

    Tip:不建议执行三张表以上的多表联合查询 对数据量不大的应用来说,多表联合查询开发高效,但是多表联合查询在表数据量大,并且没有索引的时候,如果进行笛卡儿积,那数据量会非常大,sql执行效率会非常低 ...

  8. mysql 连接查询两个条件_MySQL之多表查询一 介绍 二 多表连接查询 三 符合条件连接查询 四 子查询 五 综合练习...

    一 介绍 本节主题 多表连接查询 复合条件连接查询 子查询 首先说一下,我们写项目一般都会建一个数据库,那数据库里面是不是存了好多张表啊,不可能把所有的数据都放到一张表里面,肯定要分表来存数据,这样节 ...

  9. mysql查一个表3到5行的数据类型_MySQL入门(三) 数据库表的查询操作【重要】

    序言 本节比较重要,对数据表数据进行查询操作,其中可能大家不熟悉的就对于INNER JOIN(内连接).LEFT JOIN(左连接).RIGHT JOIN(右连接)等一些复杂查询. 通过本节的学习,可 ...

最新文章

  1. 6月Python热文Top10,精选自1000篇文章
  2. (转)javascript关于运动的各种问题经典总结
  3. 救命!我的电子邮件发不到 500 英里以外!
  4. 计算1+2+……+N的和。
  5. c语言异或实现交换原理,使用异或运算符实现两个数交换原理
  6. 共享马扎的火爆,原来是一场营销!
  7. java基础—多线程下的单例设计模式的安全问题
  8. iphone开发常用编码
  9. Vue学习手记02-路由创建
  10. 游戏笔记本计算机购买,游戏笔记本电脑推荐 三分钟售罄TA为何如此火爆?
  11. [Python+Django]Web图书管理系统毕业设计之源码+论文篇
  12. 男生的长相到底有多重要?
  13. table表格及属性
  14. Unity内存优化 之 ManagedHeap 整理
  15. x570主板怎么样 x570主板支持的cpu
  16. Mybatis的where标签,还有这么多知识点
  17. iOS -- masonry的使用
  18. 【时间序列】时间卷积神经网络
  19. windows下wav格式歌曲文件信息修改
  20. 英特尔全面布局云边协同,赋能智慧新医疗

热门文章

  1. Mask R-CNN用于目标检测和分割代码实现
  2. 自然语言推理:使用注意力机制
  3. 3D目标检测论文阅读摘要
  4. invalidate()源码分析
  5. 2021年大数据HBase(五):HBase的相关操作JavaAPI方式
  6. Lumen / Laravel 使用网易邮箱 SMTP 发送邮件
  7. Java map 知识
  8. SVG.js 笔记 (一)
  9. Integer vs int
  10. Java IO流学习总结四:缓冲流-BufferedReader、BufferedWriter