单表查询和多表连接查询

来源:9-5 店铺列表页后端的开发

qq_i_aCFGLW

2020-04-03

老师你好,我们的系统如果要用到几张表的数据,都是采用连接查询,一次性查询出几张表的数据。但是我在其他地方看到如果需要用到几张表的数据,有的是采用分别单表查询,再使用java逻辑进行拼接。(以下问题不仅仅针对我们o2o商场场景)
1、对于这两种方法性能和时间上有区别吗(我们现在都使用了连接池,应该不会因为建立关闭连接耗费大量时间吧)
2、老师你公司中一般是怎么选择的

写回答

1回答

翔仔

2020-04-03

同学好,当然是有区别的,通常情况下,连表查询肯定会比在java里拼接要快,毕竟直接走的是数据库的操作。读入内存再merge的话会有很多数据需要去重,还会占用内存空间。

公司里面,一般针对多表查询,可以将一些关键信息放置到缓存里面,尽量避免join之类的查询。或者可以离线去join,写入缓存,然后直接走的缓存查数据

0
1
qq_i_aCFGLW
非常感谢!
2020-04-03
共1条回复

Java双版本(SSM到SpringBoot)校园商铺全栈开发

SSM商铺V1.0,解决毕设痛点;SpringBoot商铺V2.0,满足工作刚需

5113 学习 · 8144 问题

查看课程