以mysql 5.7.20 為例
一直以來,理解有偏差,作此記錄,糾正
一、DATETIME和TIMESTAMP 都有高達微秒(6位)的精度
范圍 DATETIME
1000-01-01 00:00:00.000000
9999-12-31 23:59:59.999999
TIMESTAMP
1970-01-01 00:00:01.000000
2038-01-19 03:14:07.999999
二、MySQL將TIMESTAMP
當前時區的值轉換為UTC進行存儲,然后從UTC轉換回當前時區進行檢索。
(對於其他類型,例如,不會出現這種情況DATETIME
。)
三、從MySQL 5.6.4開始需要存儲
DATETIME
|
5字節+小數秒存儲 |
TIMESTAMP
|
4字節+小數秒存儲 |
分數秒精度 | 需要存儲 |
0 | 0個字節 |
1,2 | 1個字節 |
3,4 | 2個字節 |
5,6 | 3個字節 |