mysql中各种连接的区别

现在有如下两个表:

A表。

 

B表。

 

 一:使用笛卡尔连接

SELECT * FROM
a,b

 

结果:

 

二:内连接

1 SELECT * FROM
2 a INNER JOIN b
3 on a.a_id=b.parent_id

三:左外连接

SELECT * FROM
a LEFT JOIN b
on a.a_id=b.parent_id

输出结果。

现在把a和b互换一下。

1 SELECT * FROM
2 b LEFT JOIN a
3 on a.a_id=b.parent_id

四:右外连接

1 SELECT * FROM
2 a RIGHT JOIN b
3 on a.a_id=b.parent_id

五:完全连接。

1 SELECT * FROM
2 a FULL JOIN b
3 on a.a_id=b.parent_id

这地方出现了一个错误。百度说是mysql5的bug.没有显示出数据应该是如下的结果:

 

posted @ 2018-04-25 18:51  陆伟  阅读(439)  评论(0编辑  收藏  举报