1.1盡量少的佔據儲存空間
int整形
型別 大小 範圍(有符號) 範圍(無符號)
tinyint 1位元組 (-128,127) (0,255)
smallint 2位元組 (-32768,32767) (0,65535)
midiumint 3位元組 (-8388608,8838607) (0,16777215)
int 4位元組 (-2147483648,2147483647) (0,4294967295)
bigint 8位元組 (-) ()
時間型別date
time() 時分秒
datetime() 年月日 時分秒
year() 年份
date 年月日
timestamp 時間戳
1.2資料的整合最好是固定長度
char(長度)
固定長度,執行速度快
長度:255字元限制
varchar(長度)
長度不固定,內容比較少的時候要進行部位操作,該型別要保留1-2個位元組儲存當前資料的長度。
長度:65535位元組限制,例如可以儲存65535/3-2個utf8字符集的漢字。
例如儲存手機號碼:char(11)固定長度,選擇char字元
1.3資訊最好儲存為整形的
①時間資訊可以儲存為整形的(時間戳)1
select from_unixtime(時間戳) from 表名 #這條語句查出來的時間直觀明了
②set集合型別:set(籃球
,足球
,撞球
,冰球
)
③enum列舉型別:enum(男
,女
,保密
)
推薦使用set和enum型別,內部會通過整形資訊參與具體運算、執行。
④ip位址也可以變為整形資訊進行儲存(mysql內部有演算法吧ip變為數字,也可以把數字變為ip)
mysql : inet aton(ip) inet ntoa(數字)
php : ip2long(ip) long2ip(數字)
7 字段型別
整型名稱 儲存空間 取值範圍 tinyint 1 128 127 smallint 2mediumint 3int 4bigint 8無符號設定 在型別之後加上unsigned 浮點型是可能丟失精度的型別,資料有可能不那麼準確 小數型名稱 儲存空間 型別float 4單精度浮點型 double 8雙...
mysql 字段型別選擇
整數型別 型別占用位元組 數值範圍 tinyint 1 128 127 0 255 smallint 2 32768 32767 0 65535 mediumint 3 8388608 8388607 0 16777215 int integer 4 2147483648 2147483647 0 ...
MySQL 字段型別選擇
在對資料進行比較操作時,同樣的資料,字元處理往往比數字處理慢,int要比varchar型別在mysql處理上簡單。比如時間可以考慮用int來儲存,ip位址也可以考慮用bigint來儲存。列的長度越小,利於效能提公升。tinyint適合列舉,0標示男,1標示女,2,標示保密 char與varchar ...