MySQL利用procedure analyse()函數(shù)優(yōu)化表結(jié)構(gòu)
簡介
procedure analyse()函數(shù)是MySQL內(nèi)置的對MySQL字段值進(jìn)行統(tǒng)計(jì)分析后給出建議的字段類型。
語法
procesure analyse(max_elements,max_memory)
max_elements
指定每列非重復(fù)值的最大值,當(dāng)超過這個值的時候,MySQL不會推薦enum類型。
max_memory
analyse()為每列找出所有非重復(fù)值所采用的最大內(nèi)存大小。
實(shí)戰(zhàn)演練
# 對t1表所有的列進(jìn)行分析 wing@3306>show create table t1; +-------+---------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table | +-------+---------------------------------------------------------------------------------------------------------------------------------------------------------+ | t1 | CREATE TABLE `t1` ( `id` int(11) DEFAULT NULL, `name` varchar(16) DEFAULT NULL, `score` int(11) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8 | +-------+---------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec) wing@3306>select * from t1 procedure analyse(4); +---------------+-----------+-----------+------------+------------+------------------+-------+-------------------------+-------------+--------------------------------+ | Field_name | Min_value | Max_value | Min_length | Max_length | Empties_or_zeros | Nulls | Avg_value_or_avg_length | Std | Optimal_fieldtype | +---------------+-----------+-----------+------------+------------+------------------+-------+-------------------------+-------------+--------------------------------+ | wing.t1.id | 1 | 200000 | 1 | 6 | 0 | 0 | 100000.5000 | 116099.2790 | MEDIUMINT(6) UNSIGNED NOT NULL | | wing.t1.name | 000jxc6V | zzznmkcX | 8 | 8 | 0 | 0 | 8.0000 | NULL | CHAR(8) NOT NULL | | wing.t1.score | 1 | 100 | 1 | 3 | 0 | 0 | 50.4889 | 28.8768 | TINYINT(3) UNSIGNED NOT NULL | +---------------+-----------+-----------+------------+------------+------------------+-------+-------------------------+-------------+--------------------------------+ 3 rows in set (0.14 sec)
總結(jié)
以上就是關(guān)于MySQL中procedure analyse()函數(shù)的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
相關(guān)文章
Mysql5.7在windows7下my.ini文件加載路徑及數(shù)據(jù)位置修改方法
這篇文章主要介紹了Mysql5.7在windows7下my.ini文件加載路徑及數(shù)據(jù)位置修改方法,需要的朋友可以參考下2018-02-02
在OneProxy的基礎(chǔ)上實(shí)行MySQL讀寫分離與負(fù)載均衡
基于Libevent機(jī)制實(shí)現(xiàn),單個實(shí)例可以實(shí)現(xiàn)25萬的SQL轉(zhuǎn)發(fā)能力,用一個OneProxy節(jié)點(diǎn)可以帶動整個MySQL集群,為業(yè)務(wù)發(fā)展貢獻(xiàn)一份力量,下面由小編來為大家簡單說說2019-05-05
查看 MySQL 已經(jīng)運(yùn)行多長時間的方法
查看MySQL啟動時間以及運(yùn)行了多長時間的方法有利用show與updtime或在linux中直接使用grep mysql 相關(guān)參數(shù)來查看,下面我們一起來看看2014-01-01
MySQL 1130異常,無法遠(yuǎn)程登錄解決方案詳解
這篇文章主要介紹了MySQL 1130異常,無法遠(yuǎn)程登錄解決方案詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08
Dbeaver連接MySQL數(shù)據(jù)庫及錯誤Connection?refusedconnect處理方法
這篇文章主要介紹了dbeaver連接MySQL數(shù)據(jù)庫及錯誤Connection?refusedconnect處理方法,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-08-08
Mac環(huán)境mysql5.7.21 utf8編碼問題及解決方案
本篇教程給大家簡單介紹下Mac環(huán)境mysql5.7.21 utf8編碼問題及解決方案,非常不錯,具有參考借鑒價值,需要的朋友參考下吧2018-03-03
mysql 查看表結(jié)構(gòu)數(shù)據(jù)的實(shí)現(xiàn)
在MySQL數(shù)據(jù)庫中,我們經(jīng)常需要查看表的結(jié)構(gòu)和數(shù)據(jù)信息,以便了解表的字段定義、索引情況等,本文主要介紹了mysql 查看表結(jié)構(gòu)數(shù)據(jù)的實(shí)現(xiàn),感興趣的可以了解一下2024-05-05

