sql内外连接查询的区别
2013-12-22 18:14
274 查看
a表
name sex
张三 男
李四 女
b表
name age
李四 30
王五 23
1\全外连接
select a.name,a.sex,b.name,b.age
from a full outer join b on a.name=b.name
结果如下,
name sex name age
张三 男 NULL NULL
李四 女 李四 30
NULL NULL 王五 23
关联字段name,左表有而右表没有的,如张三,b.name,b.age都为NULL,加上左右两边都有的就是左连接的结果;而右表有而左表表没有的,如王五,a.name,a.sex都为NULL,加上左右两边都有的就是右连接的结果;左右两边都有的如,李四,这就是内连接。相见如下
2\左
select a.name,a.sex,b.name,b.age
from a left outer join b on a.name=b.name
结果如下
name sex name age
张三 男 NULL NULL
李四 女 李四 30
2\右
select a.name,a.sex,b.name,b.age
from a right outer join b on a.name=b.name
结果如下
name sex name age
李四 女 李四 30
NULL NULL 王五 23
3\内联
select a.name,a.sex,b.name,b.age
from a inner join b on a.name=b.name
结果如下
name sex name age
李四 女 李四 30
4\交叉-------------------------------------------------------特别注意 ,这里的是先查到结果然后根据结果去用where去筛选
select a.name,a.sex,b.name,b.age
from a cross join //////////////////////////b where a.name=b.name
结果如下
name sex name age
张三 男 李四 30
李四 女 王五 23
张三 男 王五 23
李四 女 李四 3
name sex
张三 男
李四 女
b表
name age
李四 30
王五 23
1\全外连接
select a.name,a.sex,b.name,b.age
from a full outer join b on a.name=b.name
结果如下,
name sex name age
张三 男 NULL NULL
李四 女 李四 30
NULL NULL 王五 23
关联字段name,左表有而右表没有的,如张三,b.name,b.age都为NULL,加上左右两边都有的就是左连接的结果;而右表有而左表表没有的,如王五,a.name,a.sex都为NULL,加上左右两边都有的就是右连接的结果;左右两边都有的如,李四,这就是内连接。相见如下
2\左
select a.name,a.sex,b.name,b.age
from a left outer join b on a.name=b.name
结果如下
name sex name age
张三 男 NULL NULL
李四 女 李四 30
2\右
select a.name,a.sex,b.name,b.age
from a right outer join b on a.name=b.name
结果如下
name sex name age
李四 女 李四 30
NULL NULL 王五 23
3\内联
select a.name,a.sex,b.name,b.age
from a inner join b on a.name=b.name
结果如下
name sex name age
李四 女 李四 30
4\交叉-------------------------------------------------------特别注意 ,这里的是先查到结果然后根据结果去用where去筛选
select a.name,a.sex,b.name,b.age
from a cross join //////////////////////////b where a.name=b.name
结果如下
name sex name age
张三 男 李四 30
李四 女 王五 23
张三 男 王五 23
李四 女 李四 3
相关文章推荐
- 浅谈sql连接查询的区别 inner,left,right,full
- sql连接查询中on筛选与where筛选的区别
- sql 左连接,右连接,内外连接 的一些 基础 区别
- sql:连接查询跟多表查询的区别
- sql连接查询中on筛选与where筛选的区别 推荐
- SQL操作,连接查询_左连接/右连接/全连接的区别 http://www.sqlzoo.cn/
- 图解 SQL 各种连接查询之间的区别
- oracle sql 多表 嵌套子查询 连接查询, join where exist in 的区别
- sql连接查询中on筛选与where筛选的区别
- sql表连接查询的区别`inner join、left join、rightjoin、outer join举例说明
- SQL左右内外连接的区别
- 图解 SQL 各种连接查询之间的区别
- sql连接查询中on筛选与where筛选的区别
- SQL 表连接查询出现重复列,由此理清LEFT JOIN、INNER JOIN的区别
- Sql_连接查询中on筛选与where筛选的区别
- sql之left join、right join、inner join的区别,连接自己时的查询结果测试
- SQL左连接查询和又连接查询的区别
- 【0037】SQL查询--连接查询--内外连接JOIN,LEFT JOIN,RIGHT JOIN,FULL JOIN
- sql内外连接的区别
- sql连接查询语句中on、where筛选的区别总结