sql中的join连接

今天简单的了解一下数据库中的sql连接,具体的讲解可以参考《数据库原理与应用》,这里从实际的使用角度来说,首先准备测试数据,表test1,test2

--创建表test1
create table test1 (
name varchar2(20),
age  int 
);
--创建表test2
create table test2 (
name varchar2(20),
age  int 
);

插入测试数据

--表test1数据
INSERT INTO "TEST1" VALUES ('jack', '23');
INSERT INTO "TEST1" VALUES ('rose', '22');
INSERT INTO "TEST1" VALUES ('mary', '25');
--表test2数据
INSERT INTO "TEST2" VALUES ('jack', '28');
INSERT INTO "TEST2" VALUES ('jim', '30');

下面从常用的连接开始说

1.左连接--left  join,以第一个表(test1)作为主表列出所有的数据,被连接的表(test2)符合条件的列出,其余为空

左连接的测试sql:

select * from test1 a left join test2 b on a.name = b.name;

数据结果:

sql中的join连接_第1张图片

2.右连接--right left,和左连接相反,以被连接的表为主体

右连接的测试sql:

select * from test1 a right join test2 b on a.name = b.name;

数据结果:

3.内连接--inner join,inner join 和where 条件的作用一样的,是把符合条件的选择出来

内连接的测试sql

select * from test1 a inner join test2 b on a.name = b.name ;
select * from test1 a ,test2 b where a.name=b.name;

数据结果:

以上简单的介绍常用的连接操作,有不足的地方,请各位大佬指正。

你可能感兴趣的:(oracle)