更新时间:2024-12-31 GMT+08:00
时间和日期类型
限制
时间和日期类型目前精确到毫秒。
| 名称 | 描述 | 存储空间 |
|---|---|---|
| DATE | 日期和时间。仅支持ISO 8601格式:'2020-01-01' | 32位 |
| TIME | 不带时区的时间(时、分、秒、毫秒) 例如:TIME '01:02:03.456' | 64位 |
| TIME WITH TIMEZONE | 带时区的时间(时、分、秒、毫秒),时区用UTC值表示 例如:TIME '01:02:03.456 -08:00' | 96位 |
| TIMESTAMP | 时间戳 | 64位 |
| TIMESTAMP WITH TIMEZONE | 带时区的时间戳 | 64位 |
| INTERVAL YEAR TO MONTH | 时间间隔字面量,年,月,格式: SY-M S:可选符号(+/-) Y:年数 M:月数 | 128位 |
| INTERVAL DAY TO SECOND | 时间间隔字面量,日,小时,分钟, 秒,精确到毫秒,格式:SD H:M:S.nnn S:可选符号(+/-) D:天数 M:分钟数 S:秒数 nnn:毫秒数 | 128位 |
示例:
-- 查询日期
SELECT DATE '2020-07-08';
_col0
------------
2020-07-08
(1 row)
-- 查询时间
SELECT TIME '23:10:15';
_col0
--------------
23:10:15
(1 row)
SELECT TIME '01:02:03.456 -08:00';
_col0
--------------
01:02:03.456-08:00
(1 row)
-- 时间间隔用法
SELECT TIMESTAMP '2015-10-18 23:00:15' + INTERVAL '3 12:15:4.111' DAY TO SECOND;
_col0
-------------------------
2015-10-22 11:15:19.111
(1 row)
SELECT TIMESTAMP '2015-10-18 23:00:15' + INTERVAL '3-1' YEAR TO MONTH;
_col0
-------------------------
2018-11-18 23:00:15
(1 row)
select INTERVAL '3' YEAR + INTERVAL '2' MONTH ;
_col0
-------
3-2
(1 row)
select INTERVAL '1' DAY+INTERVAL '2' HOUR +INTERVAL '3' MINUTE +INTERVAL '4' SECOND ;
_col0
----------------
1 02:03:04.000
(1 row) 父主题: 数据类型