中易网

procedure02analyse怎么使用

答案:1  悬赏:20  
解决时间 2021-01-24 10:21
procedure02analyse怎么使用
最佳答案
我们在设计表时有时候总会思考到底某个字段选用什么类型呢。跨过菜鸟级的phper会有相当的经验直接啪啪啪敲出来,其实我们在后期调优时也可以使用 procedure analyse();分析表结构看看mysql给我们的字段建议,综合实际情况调整一些字段的类型(这个已经很琐碎了,一般应用都到不了这么细,并且我们鉴于经验设计的数据库基本都能满足应用。我这里只是了解到了这些知识给自己做个记录而已)。
procedure analyse();语法如下
select column from table_name procedure analyse();
以下引用一段文章:
PROCEDURE ANALYSE 通过分析select查询结果对现有的表的每一列给出优化的建议。
PROCEDURE ANALYSE的语法如下:
SELECT ... FROM ... WHERe ... PROCEDURE ANALYSE([max_elements,[max_memory]])

max_elements (默认值256) analyze查找每一列不同值时所需关注的最大不同值的数量.
analyze还用这个值来检查优化的数据类型是否该是ENUM,如果该列的不同值的数量超过了
max_elements值ENUM就不做为建议优化的数据类型。
max_memory (默认值8192) analyze查找每一列所有不同值时可能分配的最大的内存数量

样例程序
------------------------------------------------------------------------------------
mysql> DESC user_account;
+-----------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra|
+-----------+------------------+------+-----+---------+----------------+
| USERID| int(10) unsigned | NO | PRI | NULL| auto_increment |
| USERNAME| varchar(10)| NO | | NULL||
| PASSSWORD | varchar(30)| NO | | NULL||
| GROUPNAME | varchar(10)| YES| | NULL||
+-----------+------------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

mysql> select * from user_account PROCEDURE ANALYSE(1)\G;
*************************** 1. row ***************************
Field_name: ibatis.user_account.USERID
Min_value: 1
Max_value: 103
Min_length: 1
Max_length: 3
Empties_or_zeros: 0
Nulls: 0
Avg_value_or_avg_length: 51.7500
Std: 50.2562
Optimal_fieldtype: TINYINT(3) UNSIGNED NOT NULL
*************************** 2. row ***************************
Field_name: ibatis.user_account.USERNAME
Min_value: dfsa
Max_value: LMEADORS
.........................................................
---------------------------------------------------------------------------------------
从第一行输出我们可以看到analyze分析ibatis.user_account.USERID列最小值1,最大值103,最小长度1,
最大长度3...,并给出了改字段的优化建议:建议将该字段的数据类型改成TINYINT(3) UNSIGNED NOT NULL。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
自由岛地址在什么地方,我要处理点事
同学结婚请喝喜酒我想请教一下大家的红包一般
怎样退去去哪儿提供的机票低价短信提醒
玉林马戏团租赁哪里有
电视背景墙效果图微晶石怎么贴墙上钉细木板好
绷缝缝纫机为啥老缠线是怎么回事
志强e5450四核pk AMD x4 740玩游戏和家用谁性
数显温度控制仪E型和K型有什么区别?
输精管堵塞有什么好的疏通方法?
灿烈不能吃辣为什么伯贤还送辣椒酱
请客吃饭做什么菜好?
佛的前后顺序
被蜜蜂叮了一下,该怎么办
脚后跟骨刺注射了封闭一周为何还疼
集游社试玩很卡怎么回事?
推荐资讯
神雕侠侣各种电视剧版本为什么没有觉远和张君
卧室吊顶好不好啊
枝江在 哪
三菱电机空调msd-df12vd质量怎样
检察院以诈骗批捕后果是什么??
王者荣耀为什么只要4个人投降就输了
100万存5年利息多少
格力空调能抽湿吗?用起来怎么要?
台式电风扇怎么拆
名媛生活馆地址在什么地方,我要处理点事
求一本小说主角叫高博是个男的
哪位清楚办公室地板铺什么好
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?