看板 Database 關於我們 聯絡資訊
之前上補習班資料庫的課程時 講師有提到 通常儲存長度不一的文字欄位會用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
Adonisy:固定是比可變快,我也這樣上 08/10 17:18
ppanerai:資料一多 全部都很慢 理論最後還是理論 = =" 08/10 19:59
qrtt1:固定長度才可以用隨機存取的方式計算,不然只能用linear sea 08/11 09:45
qrtt1:rch..。而資料大時變慢. 這講的是一種感覺而已吧。 08/11 09:46
qrtt1:搜尋的時間本來就隨資料筆數成長 08/11 09:47
fumizuki:char效率好 varchar 查詢不必刪除空白 08/12 10:06