SQL多表连接笔记

 

 

  • 根据连接的类型,多表连接查询主要可以分为交叉连接查询、内连接查询和外连接查询。
  • 内连接查询又可分为等值连接查询、自然连接查询和自连接查询等;
  • 外连接查询则可以分为左外连接查询、右外连接查询和全外连接查询等。

多表连接查询的基本语法:

select name_list

from table1

join_type table2

on (join_condition);

其中,jion_type是连接类型;关键字on用于指定连接条件。jion_type选择情况如下:

 

 

cross join表示对两表进行交叉连接,这时语句中,不能带有on关键字,即没有查询条件;

[inner] join表示对两表进行等值连接,其中关键字inner可以省略;

 

left[outer] join表示对两表进行左外连接查询,其中关键字outer可以省略;

 

right[outer] join表示对两表进行右外连接查询,其中关键字outer可以省略;

 

full[outer] join表示对两表进行全外连接查询,其中关键字outer可以省略;

 

DEMO:

 

ta的table:

 

A B
1 a1 b1
2 a2 b2
3 a3 b3

 

 

 

 

 

 

tb的table:

 

A C
1 a1 c1
2 a2

c3

3 a4 c4

 

 

  • 内连接
select * from
ta inner join tb
on ta.A=tb.A
 
A B A C
1 a1 b1 a1 c1
2 a2 b2 a2 c2


  • 交叉连接
select * from 
ta cross join tb
 

SQL多表连接笔记
 
  • 全连接
select * from
ta full outer join tb
on ta.A=tb.A
 


SQL多表连接笔记

 

  • A和B的左外连接
select * from
ta left outer join tb
on ta.A=tb.A
 

SQL多表连接笔记
 
  • A和B的右外连接
select * from
ta right outer join tb
on ta.A=tb.A
 

SQL多表连接笔记
 

 

你可能感兴趣的:(sql)