比如:
select t1.*
from table1 t1, table2 t2
where t1.col1 = t2.col2
和
select t1.*
from table1 t1inner join table2 t2 on t1.col1 = t2.col2
虽然运行结果是一样的,但是数据量大的情况下,发现inner join会快一些。大家都用哪种写法?
结果一样,实现原理完全不同,join是基于hashtable连接比较,而=直接就是取笛卡尔集再过滤,所以后者效率低,是O(N^2),前者是O(LogN)