首批通过分布式安全可靠测评,为关键业务系统打造
日期时间和间隔数据类型概述
更新时间:2026-06-09 17:08:44
OceanBase 数据库与 Oracle 中的数据类型一致,也支持日期时间和间隔数据类型。本文主要提供 OceanBase 数据库当前版本所支持日期时间和间隔数据类型的概览。
日期时间数据类型
日期时间数据类型用于保存日期和时间,OceanBase 数据库当前版本所支持的日期时间数据类型的信息如下表所示。
| 数据类型 | 说明 |
|---|---|
| DATE | 存储日期和时间信息,精确到秒,不带时区。 |
| TIMESTAMP | DATE 数据类型的扩展,精确到纳秒,不带时区。 |
| TIMESTAMP WITH TIME ZONE | DATE 数据类型的扩展,精确到纳秒,带时区信息。 |
| TIMESTAMP WITH LOCAL TIME ZONE | 带有本地时区的 TIMESTAMP,存储数据库时区。 |
间隔数据类型
与日期时间数据类型存储特定的一个时间点不同,间隔数据类型用来存储一段时间。间隔数据类型有效的存储了两个日期时间值之间的差异,此类别中有以下数据类型:
| 数据类型 | 说明 |
|---|---|
| INTERVAL YEAR TO MONTH | 存储以年和月为单位的时间段。 |
| INTERVAL DAY TO SECOND | 存储以天、小时、分钟和秒为单位的时间段。 |
相关字段和值
日期时间和间隔都由字段组成,这些字段的值决定了数据类型的值。
| 字段 | 日期时间的有效值 | 间隔的有效值 |
|---|---|---|
YEAR |
-4712 ~ 9999 (不包括第 0 年) | 任何正整数或负整数。 |
MONTH |
01 ~ 12 | 0 ~ 11 |
DAY |
01 ~ 31 (受 MONTH 和 YEAR 的值限制,根据当前 NLS 日历参数的规则) |
任何正整数或负整数。 |
HOUR |
00 ~ 23 | 0 ~ 23 |
MINUTE |
00 ~ 59 | 0 ~ 59 |
SECOND |
00 ~ 59.9(n) 其中 9(n) 是时间小数秒的精度。9(n) 部分不适用于 DATE。 |
0 ~ 59.9(n) 其中 9(n) 是间隔小数秒的精度。 |
TIMEZONE_HOUR |
-12 ~ 14(此范围适应夏令时更改) 不适用于 DATE 或 TIMESTAMP。 |
不适用 |
TIMEZONE_MINUTE |
00 ~ 59 不适用于 DATE 或 TIMESTAMP。 |
不适用 |
TIMEZONE_REGION |
查询 V$TIMEZONE_NAMES 数据字典视图的 TZNAME 列。 不适用于 DATE 或 TIMESTAMP。 |
不适用 |
TIMEZONE_ABBR |
查询 V$TIMEZONE_NAMES 数据字典视图的 TZABBREV 列。 不适用于 DATE 或 TIMESTAMP。 |
不适用 |
更多信息
关于夏令时的相关信息,请参见 夏令时。
关于日期时间
DATE和间隔INTERVAL的计算的相关信息,请参见 日期时间 DATE 和间隔 INTERVAL 的计算。