欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

mysql如何优化数据量极大的sql语句,并且要查询两张表

程序员文章站 2022-05-08 20:45:50
...
两张表A有2000条,B有2000万条
select a.xxx,b.xxx,b.xxxx, from A as a left join b as b on a.id = b.bid where a.xx = 0 and a.xxx != 0;

回复内容:

两张表A有2000条,B有2000万条
select a.xxx,b.xxx,b.xxxx, from A as a left join b as b on a.id = b.bid where a.xx = 0 and a.xxx != 0;

  1. 分页查,不要一次取大量数据

  2. 冗余要查的b的两个字段在a表里,就无需join了

  3. 必须要上缓存,不然数据库肯定撑不住

  4. 数据量上了千万就需要考虑水平分割了

首先我不是做后端的,我也只能说说自己知道的一点

不知道工具能不能看到执行计划,如果可以看到执行计划,看看执行过程,哪个过程产生的数据大就看能不能优化

我也就知道加索引应该能够优化一点吧