Netezza 日期功能无法正常工作
Posted
技术标签:
【中文标题】Netezza 日期功能无法正常工作【英文标题】:Netezza date function not working properly 【发布时间】:2015-12-08 16:51:09 【问题描述】:为什么这两个都返回 0?
从 _v_dual 中选择 EXTRACT (DAY FROM date('08DEC2015') - current_timestamp)
从 _v_dual 中选择 EXTRACT (DAY FROM date('09DEC2015') - current_timestamp)
今天是 2015 年 12 月 8 日,美国东部标准时间上午 11:50,我写这篇文章。
【问题讨论】:
【参考方案1】:DATE 函数运行良好。 DAY 的 EXTRACT 返回零,因为在这两种情况下,当您从硬编码的日期函数中减去 current_timestamp 时返回的间隔都小于一天。
TESTDB.ADMIN(ADMIN)=> select date('08DEC2015') - current_timestamp;
?COLUMN?
-----------
-15:30:12
(1 row)
TESTDB.ADMIN(ADMIN)=> select date('09DEC2015') - current_timestamp;
?COLUMN?
----------
08:29:42
(1 row)
如果您的时间间隔大于 24 小时,那么您将从表达式中提取一个非零 DAY 值。顺便说一句,请注意“from _v_dual”对于 Netezza 中的 SELECT 来说是不必要的。
TESTDB.ADMIN(ADMIN)=> select date('10DEC2015') - current_timestamp;
?COLUMN?
----------------
1 day 08:26:11
(1 row)
TESTDB.ADMIN(ADMIN)=> select EXTRACT (DAY FROM date('10DEC2015') - current_timestamp);
DATE_PART
-----------
1
(1 row)
【讨论】:
太棒了。感谢 _v_dual 提示。仍然停留在我以前的 ORACLE 习惯中。以上是关于Netezza 日期功能无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章