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

WBOY
Libérer: 2016-08-26 10:28:22
original
1246 Les gens l'ont consulté

两张表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. 数据量上了千万就需要考虑水平分割了

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

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

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

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal