作者dls ( )
看板Database
標題使用char在日後select時會比varchar更快速?
時間Thu Aug 10 17:13:12 2006
之前上補習班資料庫的課程時
講師有提到
通常儲存長度不一的文字欄位會用varchar
但有些系統在設計DB schema時
會使用 cahr 而非 varchar
是一種空間換時間的作法
char(n) 是每筆資料都佔n個字元
varchar(m) 是每筆資料最多佔m個字元 (所以可能是0~m)
今天如果要找尋第 i 筆資料
如果是使用 char 的話 直接到起始位置再加上i*n 就可以找到所需要的資料
(以上有錯請指正)
我想請問一下
大家覺得這種作法好嘛??
在設計時要怎麼去計算大概每次select會快多少??
也就是說去評估這種空間換時間的作法划不划算
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.119.232.6
1F:推 Adonisy:固定是比可變快,我也這樣上 08/10 17:18
2F:推 ppanerai:資料一多 全部都很慢 理論最後還是理論 = =" 08/10 19:59
3F:推 qrtt1:固定長度才可以用隨機存取的方式計算,不然只能用linear sea 08/11 09:45
4F:推 qrtt1:rch..。而資料大時變慢. 這講的是一種感覺而已吧。 08/11 09:46
5F:推 qrtt1:搜尋的時間本來就隨資料筆數成長 08/11 09:47
6F:推 fumizuki:char效率好 varchar 查詢不必刪除空白 08/12 10:06