netezza sql中2个日期之间的月份
Posted
技术标签:
【中文标题】netezza sql中2个日期之间的月份【英文标题】:Months between 2 dates in netezza sql 【发布时间】:2015-12-15 22:13:21 【问题描述】:在 Netezza 中,我们有一个months_between 函数,它给出两个日期之间的月份: 我怀疑,它首先计算日期之间的天数,然后除以 30?
有没有办法在 netezza 中编写 sql 以便我得到这样的整数值: 如果 2 个日期在同一月份,则返回 0。 否则返回月数。即 31Aug15 和 01SEP15 应该返回 1,因为它们位于不同的月份。
如果我将months_between 的o/p 转换为一个整数,不幸的是,我会受到ROUNDING 的支配。
所以cast (months_between(31Aug15 , 01SEP15) as integer)
将返回 0,而不是 1。
如何做到这一点?
【问题讨论】:
Netezza 对我来说是新手!你能把你的作品贴在这里吗,也许我可以帮忙纠正一下。 【参考方案1】:解决方法是使用当月的最后一天:
cast (months_between(last_day(31Aug15) , last_day(01SEP15)) as integer)
翻译为:
cast (months_between(31Aug15 , 31SEP15) as integer)
结果为 1
【讨论】:
我来过这里一个月不止一次了,所以我希望我能给这个超过一个赞以上是关于netezza sql中2个日期之间的月份的主要内容,如果未能解决你的问题,请参考以下文章