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秒爲界四捨五入。
相關文章
相關標籤/搜索