最近研究公司的原来业务逻辑,发现使用联表查询,多层嵌套都把我搞蒙了,就想着使用join进行优化
进过测试,业务逻辑没有问题,结果也相同,但是发现一个问题,使用join进行连接查询,查询效率会变慢,查询用时会比原来增加一个量级,这还是在数据量不大的情况下,后期大量数据,肯定会影响查询效率
尝试解决办法:
1、过滤查询条件,查看是否有影响索引的条件出现,发现没有,此路不通
2、黔驴技穷了,直接上百度,发现一大堆解决方案,奈何自己水平有限,对于算法,优化等很小白,暂时不考虑
3、无意中,发现一个方法,通过使用连接mysql,show variables like '%buffer%';,查看join_buffer_size大小,发现值过小,进行修改调大后,发现问题解决,看了下大神的解释,说是因为缓存块的增大,导致每次读取多行,这样可以减少IO消耗