第一章節 Schema與數據類型優化
1. 準則
此文所述均基於InnoDB
- 由於字符集和校對規則(排序規則),字符串比整數操作代價更高
-
在索引列中使用NOT NULL(稀疏數據除外,其有很好的空間效率)
- 在非索引列中使用NOT NULL帶來的性能提升較小
-
DATETIME 和 TIMESTAMP 的區別(DATE精確到天,TIME最大精度爲天)
- 默認值分別爲NULL,當前時間
- 分別使用8字節,4字節存儲
- 區間分別爲1970-01-01 00:00:01.000000 - 2038-01-19 03:14:07.999999,1000-01-01 00:00:00.000000 - 9999-12-31 23:59:59.999999
- TIMESTAMP在UPDATE時未指定,則更新爲當前時間
- TIMESTAMP隨時區自動更新