Mysql關(guān)系型數(shù)據(jù)庫管理系統(tǒng)
mysql是一個開放源碼的小型關(guān)聯(lián)式數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典mysql ab公司。mysql被廣泛地應(yīng)用在internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了mysql作為網(wǎng)站數(shù)據(jù)庫。
不知道是否遇到過為MySQL表結(jié)構(gòu)該選擇什么類型字段而郁悶?或者為MySQL字段該選擇多少長度而糾結(jié)?下面這篇文章就給大家介紹一個武林秘籍吧~也是我最近才學(xué)來的,感興趣的朋友們下面來一起看看吧。
簡介
procedure analyse()函數(shù)是MySQL內(nèi)置的對MySQL字段值進行統(tǒng)計分析后給出建議的字段類型。
語法
procesure?analyse(max_elements,max_memory)
max_elements
指定每列非重復(fù)值的最大值,當(dāng)超過這個值的時候,MySQL不會推薦enum類型。
max_memory
analyse()為每列找出所有非重復(fù)值所采用的最大內(nèi)存大小。
實戰(zhàn)演練
#?對t1表所有的列進行分析 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)容了,更多相關(guān)內(nèi)容請關(guān)注PHP中文網(wǎng)(www.php.cn)!
? 版權(quán)聲明
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載。
THE END