【发布时间】:2022-12-07 21:15:32
【问题描述】:
我有 2 个日期字段,surv_year (int) 和 surv_month (text)。
示例输出:
surv_year surv_month
2022 January
2022 August
无论如何连接 2 并将月份从文本更改为数字,并将我的最终输出为 YYYYMM,上面的示例显示 202201 和 202208?
【问题讨论】:
标签: sql postgresql
我有 2 个日期字段,surv_year (int) 和 surv_month (text)。
示例输出:
surv_year surv_month
2022 January
2022 August
无论如何连接 2 并将月份从文本更改为数字,并将我的最终输出为 YYYYMM,上面的示例显示 202201 和 202208?
【问题讨论】:
标签: sql postgresql
您可以使用 to_date() 函数将这两个值转换为正确的日期:
select to_date(concat(surv_month, ' ', surv_year), 'Month yyyy')
from the_table
将在该月的第一天返回 date。
可以使用 to_char() 函数将此日期格式化为您想要的格式:
select to_char(to_date(concat(surv_month, ' ', surv_year), 'Month yyyy'), 'yyyymm')
from the_table
【讨论】:
to_char(....)::int