`

join、Inner join、left join、right join、full join的使用

 
阅读更多

1、新建两张表,如下图所示:



 

 其中,persons表中的id与orders表中的pid相对应。

2、join

select a.*,b.* from persons a
join orders b
on a.id = b.pid;

查询结果为满足a.id和b.pid的数据行,其他的不显示,如下图所示:

 2、inner join 内连接

select a.*,b.* from persons a
INNER JOIN orders b
on a.id = b.pid;

查询结果与join一样,为满足a.id和b.pid的数据行,其他的不显示,

其实join为inner join省略掉inner,如下图所示:



 3、外连接 left join、right join、full join,其实是left outer join、right outer  join、full outer  join,只是outer 可以省略掉而已。

select a.*,b.* from persons a
LEFT OUTER JOIN orders b
on a.id = b.pid;

左连接,则返回的数据是以左边的数据表为基准,即以left join前面的数据表为基准,当左表格中的行在右表中没有匹配行时,也返回。返回的记录中,选择的右表的列的内容为NULL

如下图所示:



 4、右连接

则返回的数据是以右边的数据表为基准,即以RIGHT join后面的数据表为基准,当右表格中的行在左表中没有匹配行时,也返回。返回的记录中,选择的左表的列的内容为NULL

如下图所示:



 5、FULL JOIN

可以把它理解为LFETRIGHT的集合,某表中某一行在另一表中无匹配行,则相应列的内容为NULL。如下图所示:



 

 

 

  • 大小: 55.8 KB
  • 大小: 47.9 KB
  • 大小: 57.3 KB
  • 大小: 54.2 KB
  • 大小: 61.8 KB
  • 大小: 67.9 KB
  • 大小: 67 KB
分享到:
评论

相关推荐

    inner join、 left join 、right join、 outer join之间的区别

    inner join、 left join 、right join、 outer join之间的区别

    SQL语句inner join,left join ,right join连接的不同之处

    SQL语句inner join,left join ,right join连接的不同之处, 非常实用

    join on 语句及扩展

    Join on/inner join on/full join on/full outer join on/left join on/right join on/cross join on; 在使用jion时,on和where条件的区别;

    SQL表连接查询(inner join、full join、left join、right join)1

    表的数据有:一、内连接-inner jion :最常见的连接查询可能是这样,查出学生的名字和成绩:[sql] view plain copy select s.

    sql中join总结

    SQL中大概有这么几种JOIN:cross joininner joinleft outer joinright outer joinfull outer join他们都是基于cross join(笛卡尔乘积),举例说明

    SQL中JOIN的使用详解

    详细说明JOIN的用法,包括LEFT JOIN、RIGHT JOIN、INNER JOIN、SELF JOIN、FULLJOIN

    SQL联合查询inner join、outer join和cross join的区别详解

    这三者的区别很多人都应该不是很清楚,包括我自己,下面我们一起来看看,如果你使用join连表,缺陷的情况下是inner join,另外,开发中使用的left join和right join属于outer join,而outer join还包括full join....

    【SQL高级(三)】【SQL 连接(JOIN)】

    文章目录SQL 连接(JOIN)不同的 SQL JOINSQL INNER JOIN 关键字SQL LEFT JOIN 关键字SQL RIGHT JOIN 关键字SQL FULL OUTER JOIN 关键字 SQL 连接(JOIN) SQL join 用于把来自两个或多个表的行结合起来。 下图展示了 ...

    SQL中inner join、outer join和cross join的区别

    我也是别人问起,才查找资料看了下,跟自己之前的认识差不多,如果你使用join连表,缺陷的情况下是inner join,另外,开发中使用的left join和right join属于outer join,另外outer join还包括full join.下面我通过...

    mysql 开发技巧之JOIN 更新和数据查重/去重

    1 INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL JOIN(MySQL 不支持)、CROSS JOIN 这是在网上找到的非常好的一篇博文,图解 join 语句: CODING HORROR-A Visual Explanation of SQL Joins 下图可以很清楚的明白,join ...

    SQL中的left join right join

    数据库常见的join方式有三种:inner join, left outter join, right outter join(还有一种full join,因不常用,本文不讨论)。这三种连接方式都是将两个以上的表通过on条件语句,拼成一个大表。

    SQL多表连接查询、多表关联

    sql多表连接查询inner join, left join , right join ,full join ,cross join Posted on 2008-05-07 21:55 我开始懂了 阅读(21431) 评论(9) 编辑 收藏 inner join,full outer join,left join,right jion 内部连接 ...

    浅谈sql连接查询的区别 inner,left,right,full

    下面小编就为大家带来一篇浅谈sql连接查询的区别 inner,left,right,full。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    sql server几种Join的区别测试方法

    主要来介绍下Inner Join , Full Out Join , Cross Join , Left Join , Right Join的区别。 Inner Join:筛选两边都有的记录 Full Out Join:两边都筛选出来,匹配能匹配的,不能匹配的用NULL列出 Cross Join:列出...

    Which SQL statement is the trump card to the senior software developer

    Within so many kinds of DML statements in SQL, I think four kinds of them, including Case When, Left Outer Join/Left Join / Right Outer Join /Right Join/ Inner Join, WITH AS and UNION/UNION ALL, are ...

    SQL语句中不同的连接JOIN及join的用法

    JOIN or INNER JOIN(内连接) : 这两个是相同的,要求两边表同时有对应的数据,返回行,任何一边缺失数据就不显示。 LEFT JOIN(左外连接):即使右边的表中没有匹配,也从左表返回所有的行。 RIGHT JOIN(右外...

    SQL 语法 SQL 总结 SQL教程

    SQL Inner Join SQL Left Join SQL Right Join SQL Full Join SQL Union SQL Select Into SQL Create DB SQL Create Table SQL Constraints SQL Not Null SQL Unique SQL Primary Key SQL Foreign Key ...

    kettle实现SQL关联查询

    kettle介绍-Step之Merge Join实现SQL关联查询,可实现INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL JOIN

    sql学习笔记

    inner join内连接,同join JOIN: 如果表中有至少一个匹配,则返回行 LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行 RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行 FULL JOIN: 只要其中一个表中存在...

Global site tag (gtag.js) - Google Analytics