mysql int 优化_MySQL数据类型优化—整数类型优化选择
原文:http://bbs.landingbj.com/t-0-240002-1.html
在設計數據庫的時候,整數類型的使用時不可避免的如ID,類型等。
在選擇整數的同時主要是考慮是數據范圍,如是否帶符號,最大存儲值。
一、有誤符號
在無符號unsigned類型比有符號的整數多一倍。
如
tinyint?范圍?-128~127
tinyint?unsigned?范圍?0~255
這里的tinyint?unsigned比tinyint?最大數多一倍,其它的同理。
如果我們的范圍?1-200,如果使用帶符號的整數?tinyint是不能滿足的,使用只有選擇更寬的字段
但使用tinyint?unsigned就可以滿足。
二、整數范圍
tinyint??~百
smallint?~萬
mediumint?~千萬
int?~10億
bigint?~?10億x10億
數據詳情范圍
tinyint?8?bits?0?~?255?-128?~?127
smallint?16?bits?0?~?65535?-32768?~?32767
mediumint?24?bits?0?~?16777216?-8388608?~?8388607
int?32?bits?0?~?4294967295?-2147483648?~?2147483647
bigint?64?bits?0?~?18446744073709551615?-9223372036854775808?~?9223372036854775807
三、如何選擇
這里的數據主要是大楷的數據范圍比如100左右用tinyint?,有時我們需要通過計算,比如我們發布的一片新聞
統計它的訪問量,如:1000(日訪問量)*365(天)*10(年)=36500000(千萬)?這是數據是大于mediumint,而在int范圍類
但如果我們考慮一下,一篇新聞能到日訪問量到1000而且持續10年,如果能那就選擇int,如果可能性不大mediumint可能是最好的選擇。
有時我們都圖略的這些范圍的分析,反正只要是整數,要么int或者bigint。在不是很影響性能的情況下,節約設計分析。
當時還有一個設計誤區其實用?int(x)來作為整數范圍,原來發布過相應的博客數據庫-整數類型寬度—int(3)與int(11)區別?來論證過!
總結
以上是生活随笔為你收集整理的mysql int 优化_MySQL数据类型优化—整数类型优化选择的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 什么是创意编程?
- 下一篇: php pdo mysql哪个好_php