mysql JOIN

mysql join语法

eg1:

select * from biao1 AS b1 

left join biao2 AS b2 ON b1.id=b2.id AND b2.name!=NULL;

 

eg2:

select * from biao1 AS b1 

left join biao2 AS b2 ON b1.id=b2.id

where b2.name!=NULL;

 

上面两个例子,如果想要取表一有,表二没有的数据,用eg1是错误的。

 

上面两个例子mysql的关于ON和where的处理基本如下:

1、先选取左表的所有数据,展示左表的字段

2、根据ON在步骤1的结果集中填充右表的某些字段,其中,右表不存在的数据用NULL填充(结果集依旧是步骤1的结果集,此步骤只是多了几个右表的字段)

3、根据where把上面的结果集筛选。

 

更多文档:

详解join

explain详解

 

posted on 2016-12-14 10:29  allen__  阅读(184)  评论(0编辑  收藏  举报

导航