專案中有個情況:老一輩人習慣用varchar儲存字串,如:
`update_time` varchar(14) not null comment '最後更新時間,如:20121027100737'。
心中猜測,資料庫既然提供了日期型別,用它必然好於使用varchar。但一直未能找到直接證據,直到看到《mysql效能調優與架構設計》。p152
首先:1. 通過選用更「小」的資料型別減少儲存空間,使查詢相同資料需要的io資源降低;
2. 通過合適的資料型別加速資料的比較;
而日期型別的儲存長度如下:
型別 儲存長度(位元組)
datetime 8
date 3
time 3
year 1
timestamp 4
顯然datetime的長度小於varchar(14)
,故而從io資源降低上來說是好了。
另外,要是選,也是選smallint啊,又小,又比varchar等字元型別快(cpu對比)
mysql日期物件 MySQL日期型別
主要型別 year time date datetime timestamp 日期函式 current date 當前日期 current time 當前時間 now 當前日期和時間,根據字段型別顯示日期或者時間 實驗timetest表結構 datetime 用於表示年月日時分秒,是 date 和 ...
mysql 日期型別
童鞋們好,大家我們聊一下日期型別。名稱位元組 日期格式 零標示用途 datetime 8yyyy mm dd hh mm ss 0000 00 00 00 00 00 可以儲存大範圍的值 從1001 到 9999年 精度為秒。它與時區無關 timestamp 4yyyy mm dd hh mm ss...
MySQL 日期型別
1.datetime 年月日時分秒 格式 yyy mm dd hh mm ss 占用 8位元組 範圍 1000 01 01 00 00 00 到 9999 12 31 23 59 59。tip 可以接收任意分隔符的日期,主要是判斷日期是否正確,是否在正確範圍內。但是,不通用的分隔符可讀性差,不建議使...