mysql right join实例_MySQL表LEFT JOIN左连接与RIGHT JOIN右连接的实例教程
LEFT JOIN 语法用法与实例MySQL LEFT JOIN 语法
SQL(MySQL) LEFT JOIN 会取得左表(table1)全部记录,即使右表(table2)并无对应匹配记录。LEFT JOIN 基本语法如下:
... FROM table1 LEFT JOIN table2 ON condition ...
MySQL LEFT JOIN 用法实例
下面是两个原始数据表:
article 文章表:
user 用户表:
我们列出所有的文章及对应的所属用户,即使没有用户的文章也列出。
SELECT ... LEFT JOIN ... ON 语句如下:
SELECT article.aid,article.title,user.username FROM article LEFT JOIN user ON article.uid = user.uid
返回查询结果如下:
可以看出来,与 INNER JOIN 明显的区别是,左表记录被全部取出,即使右表无对应匹配记录。
提示
这里所谓记录被“全部”取出,是相对于 INNER JOIN 的限制来说的。其实可以在上面的 SQL 语句后面加个 WHERE 条件或者 LIMIT 等关键字以同一般 SQL 语句一样对结果集做一个范围限制。
IS NULL
在上面的例子中,对于右表中没有对应匹配的数据记录,其所有的列都被置为 NULL,因此要查询这部分记录(如在上面例子中体现为查找 aid=4 这类无对应用户的文章记录),可以附加 IS NULL 条件:
SELECT article.aid,article.title,user.username FROM article LEFT JOIN user
ON article.uid = user.uid WHERE user.uid IS NULL
RIGHT JOIN 语法用法与实例MySQL RIGHT JOIN 语法
SQL(MySQL) RIGHT JOIN 会取得右表(table2)全部记录,即使左表(table2)并无对应匹配记录。RIGHT JOIN 基本语法如下:
... FROM table1 RIGHT JOIN table2 ON condition ...
MySQL RIGHT JOIN 用法实例
下面是两个原始数据表:
article 文章表:
user 用户表:
我们列出所有的用户,以及他们可能拥有的文章。
SELECT ... RIGHT JOIN ... ON 语句如下:
SELECT article.aid,article.title,user.username FROM article RIGHT JOIN user ON article.uid = user.uid
返回查询结果如下:
对比 LEFT JOIN 返回的查询结果,RIGHT JOIN 返回的结果与其刚好“相反”。
IS NULL
在上面的例子中,对于左表中没有对应匹配的数据记录,其所有的列都被置为 NULL,因此要查询这部分记录(如在上面例子中体现为查找 username=Jack 这类无对应文章的所有用户),可以附加 IS NULL 条件:
SELECT article.aid,article.title,user.username FROM article LEFT JOIN user
ON article.uid = user.uid WHERE article.aid IS NULL
时间: 2015-12-14
mysql right join实例_MySQL表LEFT JOIN左连接与RIGHT JOIN右连接的实例教程相关推荐
- MySQL记录变化工具_MySQL 表记录数对比工具
工具介绍: 以下介绍一个实时对比两个MySQL实例的中表记录数的工具 checkcount.py . 工具大多用于迁移后或者主从数据快速比较 , 快速验证两个mysql数据库实例每个表是否具有相同记录 ...
- mysql数据异常增长_mysql表到一定数据量后会异常的增长
如题 InnoDB的table,里面的字段非常简单,如图中的类型 才100多W的数据量,数据是慢慢积累起来的,到了最近发现涨到12G后,会每天成倍的增长,最高到达过50G,而数据量还是那些,longt ...
- mysql约束条件整型_MySQL 表的操作
表的操作 创建表的完整语法: create table 表名( 字段名1 字段类型[(宽度) 约束条件], 字段名1 字段类型[(宽度) 约束条件], 字段名1 字段类型[(宽度) 约束条件] ); ...
- mysql随机选择记录表_Mysql表中取随机记录
RAND()是Mysql中的取随机数函数,该函数返回一个float型数值v,v的值为0 例如: mysql> SELECT RAND(); -> 0.9233482386203 mysql ...
- mysql 记录更新时间_MySQL表内更新时,自动记录时间
1.创建表: create table test_time ( id int primary key not null, status varchar(24), create_time dateti ...
- mysql 数据类型 有备注_MySQL表结构(含数据类型、字段备注注释)导出成Excel
像我们使用的数据库图形化工具Navicat Premium.Navicat for XXX.SQLyog.DataGrip等等都可以导出表结构SQL脚本,但是当我们要将数据库整理成文档时导出表结构的s ...
- mysql 安建分区_mysql表分区
范围分区: CREATE TABLE BIGTABLE ( ID INT, SNPTIME DATETIME NOT NULL, VALUE VARCHAR(20), PRIMARY KEY (SNP ...
- mysql连接代码_MySQL 表连接
MySQL数据库表有4种连接方式: 左连接(左外连接) 右连接(右外连接) 等值连接(内连接) 全连接(全外连接) 以下,小编将依次简要介绍,希望能对初学的小伙伴们有所裨益. 首先先介绍下将要使用的两 ...
- 三个表的全连接查询(多表联合查询):替代full join
(首先声明一下,本篇文章是要查询表的所有数据) 参考:https://blog.csdn.net/u012410733/article/details/63684663 在mysql中没有full j ...
最新文章
- 涉密计算机用户账号设置审批表,北京邮电大学涉密计算机配置审批表.PDF
- ExFat文件系统DBR受损恢复案例
- 分享自己针对Automation做的两个成熟的框架(QTP 和Selenium)
- 月份第一天_4月份的第一天,全省迎来晴暖天气~
- Mysql数据库启动命令
- Linux编程中C语言头文件位置
- 四级联动--省市县/区街道
- VSCODE Vue插件
- JAVA项目 畅购商城 框架搭建
- 5G时代下的人工智能发展
- 百度地图查看导航记录,导航路线,记录驾驶路线
- 用python模拟球赛
- 综合案例----学生管理系统
- ddr42400和2660混插_时至今日,DDR42400的马甲内存条为何不值得购买了?
- 【Python】豆瓣FM API分析
- 【Simulink教程案例12】基于BPSK+costas环载波同步的simulink建模与仿真分析
- vmware esxi 6-7 全套资源分享(定期更新)
- win10 安装驱动时 哈希值报错解决办法记录
- 数字信号处理知识点总结(二):傅里叶级数与变换
- Java编程那些事儿103——网络编程技术2