日期时间类型的示例 - Amazon Redshift

日期时间类型的示例

下面,您可以找到处理 Amazon Redshift 支持的日期时间类型的示例。

日期示例

以下示例插入具有不同格式的日期并显示输出。

create table datetable (start_date date, end_date date);
insert into datetable values ('2008-06-01','2008-12-31'); insert into datetable values ('Jun 1,2008','20081231');
select * from datetable order by 1; start_date | end_date ----------------------- 2008-06-01 | 2008-12-31 2008-06-01 | 2008-12-31

如果您将时间戳值插入 DATE 列,时间部分会被忽略,只会加载日期。

时间示例

以下示例插入具有不同格式的 TIME 和 TIMETZ 值并显示输出。

create table timetable (start_time time, end_time timetz);
insert into timetable values ('19:11:19','20:41:19 UTC'); insert into timetable values ('191119', '204119 UTC');
select * from timetable order by 1; start_time | end_time ------------------------ 19:11:19 | 20:41:19+00 19:11:19 | 20:41:19+00

时间戳示例

如果您将日期插入到 TIMESTAMP 或 TIMESTAMPTZ 列中,时间将默认为午夜。例如,如果您插入文本 20081231,存储的值为 2008-12-31 00:00:00

如要更改当前会话的时区,请使用 SET 命令设置 timezone 配置参数。

下面的示例插入不同格式的时间戳并显示生成的表。

create table tstamp(timeofday timestamp, timeofdaytz timestamptz); insert into tstamp values('Jun 1,2008 09:59:59', 'Jun 1,2008 09:59:59 EST' ); insert into tstamp values('Dec 31,2008 18:20','Dec 31,2008 18:20'); insert into tstamp values('Jun 1,2008 09:59:59 EST', 'Jun 1,2008 09:59:59'); SELECT * FROM tstamp; +---------------------+------------------------+ | timeofday | timeofdaytz | +---------------------+------------------------+ | 2008-06-01 09:59:59 | 2008-06-01 14:59:59+00 | | 2008-12-31 18:20:00 | 2008-12-31 18:20:00+00 | | 2008-06-01 09:59:59 | 2008-06-01 09:59:59+00 | +---------------------+------------------------+