单表查询和多表连接查询
来源:9-5 店铺列表页后端的开发
qq_i_aCFGLW
2020-04-03
老师你好,我们的系统如果要用到几张表的数据,都是采用连接查询,一次性查询出几张表的数据。但是我在其他地方看到如果需要用到几张表的数据,有的是采用分别单表查询,再使用java逻辑进行拼接。(以下问题不仅仅针对我们o2o商场场景)
1、对于这两种方法性能和时间上有区别吗(我们现在都使用了连接池,应该不会因为建立关闭连接耗费大量时间吧)
2、老师你公司中一般是怎么选择的
写回答
1回答
-
同学好,当然是有区别的,通常情况下,连表查询肯定会比在java里拼接要快,毕竟直接走的是数据库的操作。读入内存再merge的话会有很多数据需要去重,还会占用内存空间。
公司里面,一般针对多表查询,可以将一些关键信息放置到缓存里面,尽量避免join之类的查询。或者可以离线去join,写入缓存,然后直接走的缓存查数据
012020-04-03
相似问题