最近在一项目中使用了数据库的左外连的一个情况:比如 : select * from A
LEFT JOIN B
ON A.field = B.field
和
select * from A
LEFT JOIN B
ON B.field = A.field上面这两条语句的区别(ON 的前后顺序区别)。在这之前,个人一直以为是没有区别的,但这次领导对我说是有区别的,网上一直没查到到底有什么区别,郁闷中。。大家来说说这两句到底有什么区别。。
LEFT JOIN B
ON A.field = B.field
和
select * from A
LEFT JOIN B
ON B.field = A.field上面这两条语句的区别(ON 的前后顺序区别)。在这之前,个人一直以为是没有区别的,但这次领导对我说是有区别的,网上一直没查到到底有什么区别,郁闷中。。大家来说说这两句到底有什么区别。。
2、另外条件决先连接表中那个字段,具体还是要看一下执行计划的。
就是先执行from A ,然后执行on后的条件A.field = B.field 在然后是左连接LEFT JOIN B 查询的表名、带的条件、、、、这些都跟你放的位置是有关系的,需要看你的具体情况,好比有多跟一的字段显示,你是用一查多还是多查一呢
LEFT JOIN B
ON A.field = B.field
和
select * from B
LEFT JOIN A
ON B.field = A.field