4 回答

TA貢獻(xiàn)1779條經(jīng)驗(yàn) 獲得超6個(gè)贊
字段為主鍵時(shí),整數(shù)型比字符串型節(jié)省空間(你應(yīng)該記得int只需4個(gè)字節(jié)吧,char一個(gè)字符一個(gè)字節(jié))
字段不為主鍵時(shí),除了節(jié)省空間,整數(shù)型比字符串型快很多,根據(jù)字符長(zhǎng)度呈幾何倍數(shù)增長(zhǎng)
對(duì)于追求完美的,像ip地址這種數(shù)據(jù),也是用整數(shù)保存在數(shù)據(jù)庫(kù)中的(IP地址字符串與整數(shù)有一套固定的算法)。
舉個(gè)例子;假如一個(gè)字段的值為1234567890,沒(méi)有主鍵的情況下
做sql查詢時(shí) where id >= '1234567890'
int型只需比較1次
char型需要比較10次,每個(gè)字符都要參與比較。所以字符越長(zhǎng),速度越慢
如果數(shù)據(jù)庫(kù)的數(shù)據(jù)量足夠大,你執(zhí)行類似sql也能很容易檢驗(yàn)處char型的速度
where id like '123%' limit 5;
where id like '1234%' limit 5;
where id like '12345%' limit 5;
where id like '123456%' limit 5;
以上sql,執(zhí)行速度依次更慢。因?yàn)樽址介L(zhǎng),參與比較的次數(shù)越多。
而int型無(wú)論長(zhǎng)短,只比1次
添加回答
舉報(bào)