首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将TIMESTAMP转换为VARCHAR并保存到Redshift的另一个表中?

如何将TIMESTAMP转换为VARCHAR并保存到Redshift的另一个表中?
EN

Stack Overflow用户
提问于 2020-12-16 07:25:21
回答 1查看 468关注 0票数 0

我有一个表,下面有一些值,

代码语言:javascript
运行
复制
CREATE TABLE school_1__test.tstamp(
    timeofday TIMESTAMP,
    timeofdaytz TIMESTAMP
);

insert into school_1__test.tstamp values('Jun 1,2008  09:59:59', 'Jun 1,2008 09:59:59 EST' );
insert into school_1__test.tstamp values('Dec 31,2008 18:20','Dec 31,2008 18:20');
insert into school_1__test.tstamp values('Jun 1,2008  09:59:59 EST', 'Jun 1,2008 09:59:59');

select * from school_1__test.tstamp;

-----------------------------------------------
     timeofday        |      timeofdaytz
-----------------------------------------------
2008-06-01 09:59:59.0 | 2008-06-01 09:59:59.0
2008-12-31 18:20:00.0 | 2008-12-31 18:20:00.0
2008-06-01 09:59:59.0 | 2008-06-01 09:59:59.0

现在我有了另一个类似下面的表,

代码语言:javascript
运行
复制
CREATE TABLE school_1__test.date_test(
    timeofday VARCHAR
);

我想将数据从tstamp表格插入到date_test表格,并尝试使用下面语句中的每个命令(注释)。

代码语言:javascript
运行
复制
INSERT INTO school_1__test.date_test (
    select to_char(timeofday, 'YYYY-MM-DD HH:MI:SS')
    --select convert(timestamp, timeofday)
    --select cast(timeofday as timestamp)
    --select to_timestamp("timeofday",'YYYY-MM-DD HH:MI:SS')
    --select timeofday::timestamp
    --select to_date(timeofday,'YYYY-MM-DD HH:MI:SS')
    --select convert(varchar, timeofday::timestamp)
    --select convert(varchar, to_timestamp("timeofday",'YYYY-MM-DD HH:MI:SS'))
    from school_1__test.tstamp
);

但是当我看到表数据时,它只显示DATE详细信息,找不到TIME详细信息。

代码语言:javascript
运行
复制
select * from school_1__test.date_test;

----------
timeofday
----------
2008-06-01
2008-06-01
2008-12-31

在转换之前,我检查了每条SELECT语句,它显示了正确的输出。

代码语言:javascript
运行
复制
select to_char(timeofday, 'YYYY-MM-DD HH:MI:SSTZ')
--select convert(timestamp, timeofday)
--select cast(timeofday as timestamp)
--select to_timestamp("timeofday",'YYYY-MM-DD HH:MI:SS')
--select timeofday::timestamp
--select to_date(timeofday,'YYYY-MM-DD HH:MI:SS')
--select convert(varchar, timeofday::timestamp)
--select convert(varchar, to_timestamp("timeofday",'YYYY-MM-DD HH:MI:SS'))
from school_1__test.tstamp

-------------------
      to_char
-------------------
2008-06-01 09:59:59
2008-12-31 06:20:00
2008-06-01 09:59:59

我检查了How to Insert TIMESTAMP Column into Redshift的问题,但我没有在这里使用任何COPY命令,所有的数据都是我自己插入的,所以从S3中什么也得不到。

使用该INSERT命令时,同时获取DATETIME部件的解决方案是什么?

EN

Stack Overflow用户

回答已采纳

发布于 2020-12-16 08:50:54

使用Amazon Redshift控制台中的查询编辑器,它在Amazon Redshift中运行得很好。

我使用了您的确切命令(没有模式名称)。

票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65315129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档