码迷,mamicode.com
首页 > 数据库 > 详细

oracle中sql语句小练习(使用连接查询)

时间:2019-08-16 12:02:35      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:部分   join   oracl   查询   连接查询   没有   情况   使用   右连接   

假设A(m,n,p),B(m,n,p)

--1.A表中有某一项m而B表中没有

使用左连接查询:
select a.* from A a left join B b on a.m=b.m where b.m is null;

左连接查询公共部分以及A表中的全部数据,B表中该列值为null的数据即为A中存在而B中不存在的结果。

--2.A表中没有某一项m而B表中有

可改为使用右连接查询:

select b.* from A a right join B b on a.m=b.m where a.m is null;

与上一条类似,只是这次判断A表中不存在而B表中存在的结果,右连接查询公共部分以及B表中的全部数据。

--3.查询A表与B表中某一项m一致,而有其它项不一致的情况,其它几项只要有一项满足不一致则输出查询结果,sql语句如下:

select a.m,a.n,a.p,b.m,b.n,b.p from A a join B b on a.m=b.m where a.n<>b.n or a.p<>b.p;

使用了join...on...的连接查询,在此语句中判断不相等的语法为<>,在这里也可写为!=,此查询为查询两个表共同的部分。

oracle中sql语句小练习(使用连接查询)

标签:部分   join   oracl   查询   连接查询   没有   情况   使用   右连接   

原文地址:https://www.cnblogs.com/jokerr/p/11362854.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!