mysql datetime、date、time、timestamp區別
- 咱們看看這幾個數據庫中(mysql、oracle和sqlserver)如何表示時間
- mysql數據庫:它們分別是 date、datetime、time、timestamp和year。date :「yyyy-mm-dd」格式表示的日期值 time :「hh:mm:ss」格式表示的時間值 datetime: 「yyyy-mm-dd hh:mm:ss」格式 timestamp: 「yyyymmddhhmmss」格式表示的時間戳值 year: 「yyyy」格式的年份值。
- date 「1000-01-01」到「9999-12-31」 3字節
- time 「-838:59:59」到「838:59:59」 3字節
- datetime 「1000-01-01 00:00:00」 到「9999-12-31 23:59:59」 8字節
- timestamp 19700101000000 到2037 年的某個時刻 4字節
- year 1901 到2155 1字節
- oracle數據庫:
- Date類型的內部編碼爲12
- 長度:佔用7個字節
- 數據存儲的每一位到第七位分別爲:世紀,年,月,日,時,分,秒
- TIMESTAMP是支持小數秒和時區的日期/時間類型。對秒的精確度更高
- TIMESTAMP WITH TIME ZONE類型是TIMESTAMP的子類型,增長了時區支持,佔用13字節的存儲空間,最後兩位用於保存時區信息
- INTERVAL 用於表示一段時間或一個時間間隔的方法.在前面有屢次提過.INTERVAL有兩種類型.
- YEAR TO MONTH 能存儲年或月指定的一個時間段.
- DATE TO SECOND存儲天,小時,分鐘,秒指定的時間段.
- sql server:datetime和smalldatetime
- datetime數據類型所佔用的存儲空間爲8個字節,其中前4個字節用於存儲1900年1月1日之前或之後的天數,數值分正負,正數表示在此日期以後的日期,負數表示在此日期以前的日期;後4個字節用於存儲今後日零時起所指定的時間通過的毫秒數。
- smalldatetime數據類型使用4個字節存儲數據。其中前2個字節存儲從基礎日期1900年1月1日以來的天數,後兩個字節存儲此日零時起所指定的時間通過的分鐘數。
- smalldatetime數據類型與datetime數據類型類似,但其日期時間範圍較小,從1900年1月1日到2079年6月6日。此數據類型精度較低,只能精確到分鐘,其分鐘個位爲根據秒數四捨五入的值,即以30秒爲界四捨五入。
歡迎關注本站公眾號,獲取更多信息