メインコンテンツまでスキップ
バージョン: 2.1

DATETIME

DATETIME

DATETIME

デスクリプション

DATETIME([P]) 日付と時刻の型。 オプションパラメータPは時刻の精度を示し、値の範囲は[0, 6]です。つまり、最大6桁の小数点以下(マイクロ秒)をサポートします。設定されていない場合は0です。 値の範囲は['0000-01-01 00:00:00[.000000]','9999-12-31 23:59:59[.999999]']です。 出力形式は'yyyy-MM-dd HH:mm:ss.SSSSSS'です

note

DATETIMEはマイクロ秒までの時間精度をサポートします。BEサイドを使用してインポートされたDATETIME型データを解析する場合(例:Stream load、Spark loadなど)、またはNereidsが有効なFEサイドを使用する場合、現在の精度を超える小数部分は四捨五入されます。 秒の小数部分を持つDATETIME値を、より少ない小数桁数を持つ同じ型のカラムに挿入すると、四捨五入されます。 DATETIMEの読み取りでは、元のDATETIMEリテラルの形式にタイムゾーンが続く形式でのタイムゾーンの解決をサポートします:

<date> <time>[<timezone>]

<timezone>でサポートされている具体的なフォーマットについては、timezoneを参照してください。なお、DATEDATEV2DATETIMEDATETIMEV2の各型には、タイムゾーン情報が含まれていないことに注意してください。例えば、入力時刻文字列"2012-12-12 08:00:00+08:00"が解析され、現在のタイムゾーン"+02:00"に変換されて、実際の値"2012-12-12 02:00:00"がDATETIMEカラムに格納された場合、クラスター環境変数がどれだけ変更されても、その値自体は変わりません。

example

mysql> select @@time_zone;
+----------------+
| @@time_zone |
+----------------+
| Asia/Hong_Kong |
+----------------+
1 row in set (0.11 sec)

mysql> insert into dtv23 values ("2020-12-12 12:12:12Z"), ("2020-12-12 12:12:12GMT"), ("2020-12-12 12:12:12+02:00"), ("2020-12-12 12:12:12America/Los_Angeles");
Query OK, 4 rows affected (0.17 sec)

mysql> select * from dtv23;
+-------------------------+
| k0 |
+-------------------------+
| 2020-12-12 20:12:12.000 |
| 2020-12-12 20:12:12.000 |
| 2020-12-13 04:12:12.000 |
| 2020-12-12 18:12:12.000 |
+-------------------------+
4 rows in set (0.15 sec)