MySQL5.6における日付、日時、タイムスタンプの違いと使い方

  • DATE 型は、日付部分はあるが時間部分がない値に使用されますMySQL は DATE 値を形式で取得して表示します。サポートされている範囲は「YYYY-MM-DD」「1000-01-01」「9999-12-31」です。

  • DATETIME 型は、日付部分と時刻部分の両方を含む値に使用されますMySQL は DATETIME 形式の値を取得して表示します。サポートされている範囲は次のとおりです: 'YYYY-MM-DD hh:mm:ss' '1000-01-01 00:00:00' '9999-12-31 23:59:59'

  • TIMESTAMP データ型は、日付部分と時刻部分の両方を含む値に使用されますTIMESTAMP の範囲は「1970-01-01 00:00:01」UTC から「2038-01-19 03:14:07」UTC です。**

MySQL における日時とタイムスタンプの違いと使用法

TIMESTAMP と DATETIME の類似点:

  • どちらも、日付と時刻の両方の部分を含む値、つまり YYYY-MM-DD HH:MM:SS[.fraction] 型の日付を表すために使用できます。

TIMESTAMP と DATETIME の違い:

  1. 両者の保管方法は異なります

TIMESTAMP の場合、クライアントが挿入した時刻を現在のタイムゾーンから UTC (協定世界時) に変換して保存します。クエリを実行すると、クライアントの現在のタイムゾーンに変換されて返されます
デフォルトでは、各接続の現在のタイムゾーンはサーバーの時間です。タイムゾーンは接続ごとに設定できます。タイムゾーン設定が同じである限り、保存されている同じ値を返すことができます。

また、DATETIME については何も変更せず、基本的にはそのまま入出力します

  1. 両者は保存できる時間範囲が異なります

タイムスタンプに保存できる時間範囲は、「1970-01-01 00:00:01.000000」から「2038-01-19 03:14:07.999999」です。
datetime が保存できる時間範囲は、「1000-01-01 00:00:00.000000」から「9999-12-31 23:59:59.999999」です。

参考ドキュメント: https://dev.mysql.com/doc/refman/5.6/en/datetime.html

おすすめ

転載: blog.csdn.net/weixin_45334970/article/details/123104565