项目中使用多次查询数据库,而不使用join,是否可行?

我在项目中发现,如果不使用join,很多地方可以封装,无论是开发还是阅读都是方便,而使用join之后,既不易读,也不易封装。
现在规模小,这样做没发现有什么问题,请问大家有这方面的经验吗?不使用join,利用循环/多次查数据库的方式来查询数据,这样可行吗?

阅读 3.6k
3 个回答
  1. 使用join确实有些问题,尤其是当join多个不同领域的表时。再做系统拆分的时候会很麻烦。例如join 学生表和餐厅表,想查询学生爱去哪个餐厅。如果以后系统做大,需要拆成学生信息系统和餐厅系统,这个时候join就出问题了。
  2. 除了系统拆分,分库分表的时候join也有很大问题。
  3. 如果不考虑以上的情况,也是适度使用join,能不用的时候就不用;即使用了不建议超过3个表的join

当然可行呀。

如果循环/多次查询数据库的方式,可以做更细粒度的缓存。

数据量很大的时候join效率会很低,反而在程序中处理更好。java的话可以考虑stream

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