MySQL多表查询
多表查询的分类
A)内连接:join,inner join
B)外连接:left join,left outer join,right join,right outer join,union
C)交叉连接:cross join
下面以实例进行分析
两张假设有两张表格A和B,把表格当作一个集合,那么表格中的记录就是集合中的一个元素。
两张表格如下:
TableA:TableB:
内连接(只有一种场景)inner join 或者join(等同于inner join)
select a.*,b.* from tablea a inner join tableb b on a.id=b.id
或
select a.*,b.* from tablea join tableb on a.id=b.id
这种场景下得到的是满足某一条件的A,B内部的数据;正因为得到的是内部共有数据,所以连接方式称为内连接。
外连接
left join 或者left outer join(等同于left join)
select a.*,b.* from tablea a left join tableb b on a.id=b.id
右外连接查询
select a.id aid,a.age,b.id bid,b.name from tablea a
right join tableb b
on a.id = b.id