(一)使用PROCEDUREANALYSE()优化表的数据类型1)场景分析有时候,我们在定义表的字段类型或者长度的时候,并不确定应该给多长。长度会被冗余定义,造成浪费。PROCEDUREANALYZE()语句是通过分析表中的数据给出优化建议。2)具体使用步骤第一步:执行如下命令:select*from`person`PROCEDUREANALYSE();Step2:结果显示为:Step3:分析结果例如可以看到第二行的结果:personnameMax_length为22。但是表一开始设置为45,这样可以优化这个字段的长度.第四步:使用alert优化表。altertablepersonmodifypersonnamevarchar(30);(2)使用中间表提高统计查询效率1)场景分析如果我们有一张关于客户的表,数据量非常大,而且是在线运行的数据库实例中的一张表。这时候我们就需要进行统计查询。直接查询不仅会对在线表造成负面影响,而且效率不高。临时表,这里以person表为例,创建临时表如下:createtabletemp_person(idint(11),personnamevarchar(45),ageint(11),sexint(1));第二步:将要查询的数据传输到中间表insertintotemp_personselect*frompersonwheresex=1;第三步:根据中间表查询selectsum(age)fromperson;本号发表了80多篇技术文章,涉及多个话题,例如:【Java话题】、【Spring话题】、【Servlet话题】、【并发编程话题】、【Redis话题】、【BATJ面试题解析】、【Dubbo话题】】、【Mybatis专题】【Mysql优化专题】(持续发布中)关注本账号后,即可阅读以上系列文章!
