a,b表在数据量差距大的情况下的连接查询

如题,A表数据量远大于B表,通过id进行关联,
应该用A.id = B.id还是B.id = A.id ?为什么

阅读 2.3k
2 个回答

你这个问题问法不对,你没有讲关联方式是内联接还是外联接

如果是前者,那么B表放前面做内链接的时候要扫描的A表行数更少

如果是后者应该是问A.id = B.id应该是左外联接还是右外联接,那么我的回答是:看你需求是什么再做决定。

本质上A.id = B.id只是说明两个表的连接条件,在逻辑上没有区别
对oracle来说,选择执行计划和左右表达式的顺序也没有关系,因此这两种写法从性能角度没有区别。

从编写sql的规范性和易读性看,表达式的顺序和from语句中表的顺序保持一致。

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