联表查询和程序控制查询的性能比较

假设有两个数据表

用户表:

id (int 11)
education_id int(11)

教育表

education_id int(11)
school varchar(32)
....

现在我要查询一个用户的受教育情况,有两种方法:

  1. 通过用户表和教育表的join查询,通过数据库的查询语句实现
  2. 程序控制:先通过用户表读出education_id,然后再读数据库的教育表

这两种实现方式在性能上有何区别?

阅读 4.3k
1 个回答

索引建的好两种方式速度上差不多
联表查询有额外的性能消耗,并且访问的数据更多,堵塞写的几率也更大,采用第二种方式比较好
如果where条件分布在两张表中并需要分页的话,还是得联表查询

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