• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

使用procedure analyse()分析mysql_MySQL

mysql 搞代码 4年前 (2022-01-09) 21次浏览 已收录 0个评论

procedure analyse();语法如下

select column from table_name procedure analyse();

以下引用一段本文来源gao@!dai!ma.com搞$$代^@码5网@文章:

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: 0Avg_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。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:使用procedure analyse()分析mysql_MySQL

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址