哪个更好?? 为什么

来源:百度知道 编辑:UC知道 时间:2024/05/06 23:36:50
select * from tab1,tab2 where tab1.name=tab2.name

select * from tab1 join tab2 on tab1.name=tab2.name

1.从效率上讲,两个写法完全相同,毫无差别,您可以通过测试以
2.尽管效率相同,微软件工程师一定会建议您尽量使用内联接。
3.为什么,实际上,WHERE 子句连接的表就是内联接,系统在执行您的WHERE子句时,会自动转换到内联接工作。使用JOIN联接表,功能更完善,逻辑更清晰,查错更容易。

但是,还是要看个人习惯,用WHERE 还是有书写方便,语句简炼,集中的优点。

select * from tab1 join tab2 on ab1.name=tab2.name

这句好点,这个直接说明两表之间的链接关系,而另外一句不能达到这个效果,因为where后边可以跟的是其它的条件。第二句要严谨多了

select * from tab1,tab2 where tab1.name=tab2.name

这个好!

没有太大差别 但是where 更适合表比较少的时候 多表的的话 没有join 清晰 简洁