我有一个可以抛出异常的datediff()函数。
我正在尝试计算两个日期之间的天数。问题是,一个日期是YYYYMMDD格式的转换整数值,第二个日期字段是时间戳。所以,在下面的代码片段中,我正在做我认为正确的转换。有时,它实际上运行。
我收到的消息是:亚马逊无效操作:数据值" 0"格式无效。
select site, datediff(days,to_date(cast(posting_dt_sk as varchar), 'YYYYMMDD'),trunc(ship_dt)) days_to_ship from sales_table
后来我添加了一个Where子句,以忽略空值,认为我的数据不好,但不是这样。我仍然收到消息。
where posting_dt_sk is not null and posting_dt_sk > 0
这对我来说都是对的,但它失败了。