Netezza:如何将 varchar 转换为日期

Posted

技术标签:

【中文标题】Netezza:如何将 varchar 转换为日期【英文标题】:Netezza: How to convert varchar to date 【发布时间】:2013-12-20 19:21:13 【问题描述】:

我有一个名为 FECHAATENDIDOVARCHAR 列,其中包含不同格式的数据,例如:

2013-07-04
14/08/2012
20080522

我需要一个查询来获取年份和月份。这就是它在 SQL Server 中的完成方式:

SELECT product, year(fechaatendido) as year, month(fechaatendido) as month
FROM consulta where YEAR(fechaatendido)=2013;

我怎样才能对 Netezza 做同样的事情?

【问题讨论】:

【参考方案1】:
select consulta.FECHAATENDIDO
,date(consulta.FECHAATENDIDO) as date_FECHAATENDIDO
from (select cast('2013-07-04' as varchar(20)) as FECHAATENDIDO
union all
select cast('14/08/2012' as varchar(20))
union all
select cast('20080521' as varchar(20))
) consulta
where date_part('year',date(consulta.FECHAATENDIDO))=2013

【讨论】:

以上是关于Netezza:如何将 varchar 转换为日期的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Netezza 中将整数字段转换为日期?

用于将数字 YYYYMMDD 格式转换为日期的 Netezza SQL 语法

如何更改 Netezza 中的日期格式?

在 netezza 中将日期转换为整数

如何将存储为 VARCHAR 的 UTC 日期时间值转换为常规日期时间

如何将包含日期的 varchar 字段类型转换为正确的日期格式