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秒為界四舍五入。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM