MySQL 左关联右表条件查询
时间:2019-12-06
本文章向大家介绍MySQL 左关联右表条件查询,主要包括MySQL 左关联右表条件查询使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
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来实现多个
原文地址:https://www.cnblogs.com/JillisRealM/p/11994502.html
- MySQL 教程
- MySQL 安装
- MySQL 管理与配置
- MySQL PHP 语法
- MySQL 连接
- MySQL 创建数据库
- MySQL 删除数据库
- MySQL 选择数据库
- MySQL 数据类型
- MySQL 创建数据表
- MySQL 删除数据表
- MySQL 插入数据
- MySQL 查询数据
- MySQL where 子句
- MySQL UPDATE 查询
- MySQL DELETE 语句
- MySQL LIKE 子句
- mysql order by
- Mysql Join的使用
- MySQL NULL 值处理
- MySQL 正则表达式
- MySQL 事务
- MySQL ALTER命令
- MySQL 索引
- MySQL 临时表
- MySQL 复制表
- 查看MySQL 元数据
- MySQL 序列 AUTO_INCREMENT
- MySQL 处理重复数据
- MySQL 及 SQL 注入
- MySQL 导出数据
- MySQL 导入数据
- MYSQL 函数大全
- MySQL Group By 实例讲解
- MySQL Max()函数实例讲解
- mysql count函数实例
- MYSQL UNION和UNION ALL实例
- MySQL IN 用法
- MySQL between and 实例讲解
- Flutter/Dart中的异步编程之Isolate
- System.Net.Http for Silverlight
- 在SAP WebClient UI里混用ABAP Webdynpro,会带来哪些问题?
- 设计模式之中介者模式
- SAP WebClient UI创建Value help最详细的步骤
- 设计模式之迭代器模式
- 跨平台开发框架 MvvmCross 初体验
- 设计模式之解释器模式
- 设计模式之命令模式
- 设计模式之职责链模式
- iOS 静态类库项目的创建与使用
- 使用ABAP创建QR Code(二维码)
- CocoaTouch 中的 NSString
- 在 iOS 项目中使用 ESRI ArcGIS SDK
- 在 Ubuntu Server 上安装配置 Mono 生产环境