0

我有一个格式为的字符串字段yyyy-mm-dd。我需要将其转换为日期字段。

这是我的 SQL 查询:

select cast(rpad(trim(field_name),10,' ') as date) as field_name
from table_name

它适用于具有值的记录,但不适用于空字符串的记录

我也尝试使用 to_date 函数,但它给出了一个错误说“无效日期”

4

2 回答 2

1

Netezza 不喜欢将空字符串转换为日期(与 SQL Server 不同),因此最好使用 case 语句将空字符串转换为 null。尝试这个:

select case when field_name = '' then NULL else date(field_name) end as field_name
from table_name;
于 2013-05-17T08:22:55.270 回答
1

检查以下查询。

SELECT TRIM(LEADING 0 FROM CAST("YourStringColumn" AS DATE))

于 2011-11-30T20:51:00.920 回答