如何在 Amazon Redshift 中将列从字符串更改为日期?

Posted

技术标签:

【中文标题】如何在 Amazon Redshift 中将列从字符串更改为日期?【英文标题】:How to change a column from string to date in Amazon Redshift? 【发布时间】:2021-05-07 02:59:53 【问题描述】:

这里的初学者,已经搜索了这个答案的高低,但它在 Amazon Redshift 的 SQL 中不起作用。

我有一个 YYYYMM 格式的日期列,等等 202101 = 2021 年 1 月。我想将其转换为日期格式,如 2021-01 或 01/2021,以日期格式为准。最好我可以添加一列而不替换原始列。但是大多数答案都在谈论表格,但我使用的是视图。

select CONVERT(DATA_PERIOD , '01')  FROM view 
LIMIT 10

DATA_PERIOD 的样本数据

DATA_PERIOD
202101
202101
202102
202102
202103

在此不胜感激,如果有办法知道 Redshift SQL 语法最接近哪种语言

【问题讨论】:

您可以为DATA_PERIOD 列添加示例数据吗? 【参考方案1】:

您可以使用以下方法将其转换为日期:

select to_date(data_period || '01', 'YYYYMMDD')

我会停在那里。但是您可以使用to_char() 转换为您喜欢的任何字符串表示形式。

【讨论】:

以上是关于如何在 Amazon Redshift 中将列从字符串更改为日期?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 AMAZON REDSHIFT 中将 userip 转换为整数

如何减少在 Amazon Redshift 中将 pandas 数据帧写入表的时间

无法在 Amazon Redshift 中将时间戳转换为日期

将新列从另一个表连接到 redshift/sql 表

有没有办法使用 RedShiftCopyActivity 仅将特定列从 RedShift 复制到 S3?

如何在 Amazon Redshift 中使用 Hibernate 插入实体