首页 > 数据库 > 国内数据库 > YashanDB日期时间型数据
日期时间型是时间维度上的数据类型,多用于时间维度上的数据提取和分析。可进一步将类型划分为:
日期类型存储了与时区无关的逻辑日历信息,其信息包括年、月、日(时、分、秒)。 可通过set命令来设置date格式。
| 类型 | 字节长度 | 取值范围 | 精度 |
|---|---|---|---|
| DATE | 8 | 0001-01-01 00:00:00 ~ 9999-12-31 23:59:59 | 秒 |
DATE类型的默认格式为YYYY-MM-DD,也可以按类似YYYY-MM-DD [HH[24]][:MI][:SS]的标准格式进行指定,其中各字符含义为:
示例
时间类型表示一日以内的时间,包含时、分、秒和微秒。
| 类型 | 字节长度 | 取值范围 | 精度 |
|---|---|---|---|
| TIME | 8 | 00:00:00.000000 ~ 23:59:59.999999 | 微秒 |
按类似HH[24][:MI][:SS][.FF] 的标准格式进行指定,其中各字符含义为:
对TIME类型执行字符串转换时,上面标准格式里的所有部分可以从低位向上省略,省略的部分按0补位。
示例
时间戳类型是信息最为全面的日期时间类型,其信息包含了年、月、日、时、分、秒、微秒。
| 类型 | 字节长度 | 取值范围 | 精度 |
|---|---|---|---|
| TIMESTAMP | 8 | 1-1-1 00:00:00.000000 ~ 9999-12-31 23:59:59.999999 | 微秒 |
按类似YYYY-MM-DD [HH[24]][:MI][:SS][.FF]的标准格式进行指定,其中各字符含义为:
Note:
微秒的特殊处理:
- 在数据类型定义时,微秒精度可定义范围为0~9,但输出的实际精度值为6。
- 系统可以接收0~9位数字的微秒输入,但会将其补齐或四舍五入到6位。
示例
年到月间隔类型表示以年月为单位的时间间隔。
| 类型 | 字节长度 | 取值范围 | 精度 |
|---|---|---|---|
| INTERVAL YEAR TO MONTH | 4 | -178000000-00 ~ 178000000-00 | 月 |
年到月间隔类型的定义格式为INTERVAL YEAR [(year_precision)] TO MONTH。year_precision:表示年的精度,取值范围[0,9],省略时取默认值2。
Note:
00-00特殊处理:
在年精度最大值9以内,和月精度最大值2以内,输入任意个0,都将被视为'00',而不受定义格式里所指定的精度限制。
按
YYYY-MM标准格式或
INTERVAL 'YYYY' YEAR(MM)指定:
示例
天到秒间隔类型表示以天、时、分、秒、微秒为单位的时间间隔。
| 类型 | 字节长度 | 取值范围 | 精度 |
|---|---|---|---|
| INTERVAL DAY TO SECOND | 8 | -100000000 00:00:00.000000
~ 100000000 00:00:00.000000 |
微秒 |
天到秒间隔类型的定义格式为
INTERVAL DAY[(day_precision)] TO SECOND[(fractional_seconds_precision)],其中:
(day_precision)省略时,系统取默认值2;
(fractional_seconds_precision)省略时,系统取默认值6。
该类型的标准格式为
DD HH:MI:SS[.FF]或
INTERVAL 'DD' DAY(day_precision)或
INTERVAL 'HH' HOUR或INTERVAL 'MI:SS.DDDDDD' MINUTE TO SECOND(fractional_seconds_precision),各字符含义为:
Note:
微秒的特殊处理:
- 在数据类型定义时,微秒精度可定义范围为0~9,但输出的实际精度值为6。
- 系统可以接收0~9位数字的微秒输入,但会将其补齐或四舍五入到定义的精度(定义的精度大于6时按6处理)。
示例
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70028812/viewspace-3079241/ ,如需转载,请注明出处,否则将追究法律责任。