我希望有人可以帮助我。
我想在数据库日期中增加一个月,但我想防止在最后一天的两个月中跳过两个月。
例如,我可能有:
2009年1月31日
我想得到
2009年2月28日
并不是
2009年3月2日
下一个日期是
2009年3月28日
2009年6月28日
等等。
oracle中是否已经有执行这种操作的功能?
编辑
是的 我想每个月将具有某些状态的所有记录复制到下一个(因此用户不必每月再次输入2,000行)
我可以获取所有记录并手动更新日期(以一种必要的方式),但是我宁愿让SQL来完成这项工作。
就像是:
insert into the_table
select f1,f2,f3, f_date + 30 /* sort of ... :S */ from the_Table where date > ?
但是问题出在最后一天。
在我必须编写这样的代码之前有任何想法吗?
for each record in
createObject( record )
object.date + date blabala
if( date > 29 and if februrary and the moon and the stars etc etc 9
end
update.... et
编辑:2
增加几个月就成功了。
现在我有这个:
insert into my_table
select f1, add_months( f2, 1 ) from my_table where status = etc etc
谢谢您的帮助。
Oracle具有一个内置函数ADD_MONTHS,该函数可以完全做到这一点:
SQL> select add_months(date '2008-01-31',1) from dual;
ADD_MONTHS(
-----------
29-FEB-2008
SQL> select add_months(date '2008-02-29',1) from dual;
ADD_MONTHS(
-----------
31-MAR-2008
问题内容: 希望创建一个可以在PHP中完成此功能的函数。 我需要在日期中添加多个月,但不能超过该月的最后一天。 例如: 如果我在PHP中使用日期加法,则会发生超限: 我的规范不允许我超支一个月。 什么是最简单的方法来做到这一点? 问题答案: 您可以比较添加1个月之前和之后的月份。如果不一样,您超出了下个月。
问题内容: 我正在尝试获取每月的今天。 而我想做的是将数字增加7天,并获得该月的当前日期。 我也希望它能够到下个月。。让我们说今天是29日。当它增加7天时,我如何才能将其发送到下个月,例如29 + 7等于下个月的5号。 我将如何去做? 我已经设法获得了当前日期。 我之所以使用它,是因为我想每7天在我的主要活动中启动一个asynctask。 问题答案: 从日历JavaDoc
问题内容: 如何在where子句中检查的日期中增加一个月? 例如: 问题答案:
问题内容: SELECT x FROM SomeClass WHERE x.dateAtt BETWEEN CURRENT_DATE AND (CURRENT_DATE + 1 MONTH) 在上面的JPQL语句中,SomeClass具有memebr ,它是a 并具有注释。 我需要一种方法来做一下-在当前状态下这显然是错误的-但找不到带有JPQL的date函数的文档。 谁能指出我指向 记录JPQL
问题内容: 假设我有一个以下格式的日期:2010-12-11(年一日) 使用PHP,我想将日期增加一个月,并且我希望年份可以在必要时自动增加(即,从2012年12月到2013年1月增加)。 问候。 问题答案:
我不确定这是否可能? 我得拿到密码才能读 今天的月份即2月今天的日期即17月底的日期即31日,然后是一年中的其他11个月,在一行中按顺序排列 8月1日-31日|9月|10月|11月|12月|1月|2月|3月|4月|5月|6月|7月 请以最佳方式提供任何建议? 多谢 定时(timing的缩写)