mysql各种join

1、inner join称为内连接或者等值连接
2、left join称为左连接,主表为左边的表
3、right join称为右连接,主表为右边的表
4、inner join当不加on条件匹配的时候,相当于取笛卡尔积,笛卡尔积又成cross join,inner join和cross join都可以隐式的直接通过关键字join进行连接
5、select * from t1,t2 相当于select * from t1 inner join t2 相当select * from t1 join t2 相当于select * from t1 cross join t2
6、当进行join表操作的时候,尽可能的通过on去匹配行数,减少where条件的执行
7、尽可能减少子查询,用join操作,能提高sql的执行性能
8、mysql不支持full join
9、在使用left join时,on和where的区别是:on中的条件不管真假都会,都会返回左表中的记录,而where是在生成临时表之后,在进行数据过滤。inner join中条件放在on和放在where效果一样

猜你喜欢

转载自kakaluo.iteye.com/blog/2254393