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'です。
注記
DATETIMEはマイクロ秒までの時刻精度をサポートします。BE側を使用してインポートされたDATETIME型データを解析する場合(Stream load、Spark loadなどを使用)、またはFE側でNereidsを有効にして使用する場合、現在の精度を超える小数点以下の桁は四捨五入されます。 小数秒部分を持つDATETIME値を、同じ型だが小数桁数が少ない列に挿入すると、四捨五入されます。 DATETIMEの読み取りでは、元のDATETIMEリテラルの形式にタイムゾーンが続く形式でのタイムゾーン解決をサポートします:
<date> <time>[<timezone>]
<timezone>でサポートされる具体的なフォーマットについては、timezoneを参照してください。なお、DATE、DATEV2、DATETIME、およびDATETIMEV2タイプは、タイムゾーン情報を含まないことに注意してください。例えば、入力時刻文字列"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)