sql中,两张表做连接时用join和不用join的区别?

两张表a和b,
SELECT * FROM a INNER JOIN b ON a.id = b.id

SELECT * FROM a,b WHERE a.id = b.id
请问以上两句sql在返回的结果集上和数据库性能上有何区别?

阅读 16.5k
3 个回答

返回结果没区别

性能: 如果数据库是对sql做过优化的应该也没区别

表关联的两种写法,其作用是一样的,推荐第一种写法,看起来更直观。
第一种写法把过滤条件和关联条件混在一起,条件多的时候比较乱。

使用 explain 看下返回的 查询行数 就知道了!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题