在 Redshift 中合并单独的月份和年份

Posted

技术标签:

【中文标题】在 Redshift 中合并单独的月份和年份【英文标题】:Combine separate month and year in Redshift 【发布时间】:2021-11-19 08:44:06 【问题描述】:

base_table

month year  
5     2021
10    2020

我想将“月”和“年”列组合成一个合适的日期列。

month_year  
2021-05-01
2020-10-01

这似乎是一个重复的问题: Concatenate in PostgreSQL

我都试过了:

to_date(CONCAT(year::text, '/'::text, month::text), 'YYYY/MM') as month_year

to_date(CONCAT(year, '/', month), 'YYYY/MM') as month_year

但也许该解决方案在 Redshift 中不起作用。

【问题讨论】:

无效的操作:函数concat(字符变化,字符变化,字符变化)不存在; make_date 似乎不适用于 PostGreSQL 8.0 (Redshift) 【参考方案1】:

试试:

(year::text || '-' || month::text || '-01')::date

这将使用 ISO 格式 (2021-11-19) 作为日期。

【讨论】:

以上是关于在 Redshift 中合并单独的月份和年份的主要内容,如果未能解决你的问题,请参考以下文章

尝试在 Redshift 中创建日期表

如何根据单独列中的月份和年份参数对 DB2 结果进行排序

将月份名称和年份组合在一列中

在 SQL Server 2008 中从月份和年份创建日期

sqlserver截取日期的年份和月份

添加多层刻度标签以绘制时间序列的 x 轴