一、inner join(内连接)
inner join 是根据on后的条件关联两张表数据,只有两张表中匹配到数据才会有记录。它查询出来的结果与表的前后位置无关,查询结果的列数是两张表中的所有列的和。
1.1 cross join(交叉连接)又名交叉积、笛卡儿积; cross join可以省略
select * from A cross join B
select * from A,B
1.2 相等连接 select * from A a inner join B b on a.column=b.column
1.3 不相等连接 select * from A a inner join B b on a.column <>b.column
1.4 自然连接(natural join ) 连接的列在两张表中的列名称相同时才会有效
二、outer join(外连接)
outer join 查询记录与表关联的顺序有关
2.1 left outer join(左外连接)
2.2 right outer join(右外连接)
左外连接和右外连接可以互换达到同样的效果。
select A.column, B.column from A left outer join B on ... = select A.column, B.column from B right outer join A on ...