简单问题,请教怎样取三个月后的日期数值?(马上给分)

galiton 2003-05-26 05:08:40




例如:
yyyy= 2003
mm = 11
dd = 30
date_now = date(yyyy,mm,dd);
现在想取 2003-11-30 三个月后的日期,请问应该用什么函数?谢谢!


...全文
49 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
szpqq 2003-05-27
  • 打赏
  • 举报
回复
不好意思,是有问题。
waterstony 2003-05-26
  • 打赏
  • 举报
回复
看你的“三个月”是如何定义了,除了考虑月的因素,还要考虑天的因素,11月30日的后三个月显然不是2月30日。
joss 2003-05-26
  • 打赏
  • 举报
回复
if mm + 3 > 12 then
ld_date = date(yyyy + 1,mm - 9,dd) //应当是9
else
ld_date = date(yyyy,mm+3,dd)
end if
joss 2003-05-26
  • 打赏
  • 举报
回复
if mm + 3 > 12 then
ld_date = date(yyyy + 1,mm - 8,dd)
else
ld_date = date(yyyy,mm+3,dd)
end if

楼主是否要这个效果!

楼上回答也没有错,主要要看你怎么定义这三个月的概念
是30*3还是每个月份都不一样的情况要不要考虑!
galiton 2003-05-26
  • 打赏
  • 举报
回复
szpqq(Gavin):

没有那么简单!
如果是3月31日,加三个月就是6月31日,显然不可以。
pbsql 2003-05-26
  • 打赏
  • 举报
回复
可以结帖了,问题不在于你怎么去做,在于你怎么去定义“三个月”
tchatcha 2003-05-26
  • 打赏
  • 举报
回复
relativedate(date, 91)
constantine 2003-05-26
  • 打赏
  • 举报
回复
没错、没错。就是relativedate()了。
bomber2001 2003-05-26
  • 打赏
  • 举报
回复
relativedate()

经过加工就行了,哈哈
szpqq 2003-05-26
  • 打赏
  • 举报
回复
取出日期的年(yyyy)、月(mm)和日(dd),简单判断一下,月份加上3后是多少月,注意超过12,即1(13),2(14),3(15)(这时年得加1),再和刚才的yyyy、dd组合
date_now = date(yyyy,mm,dd);
galiton 2003-05-26
  • 打赏
  • 举报
回复
我是打算用在计算注册日期上面的,自己写的话太花时间了。
如果哪位有的话就分享一下,
没有的话我就relativedate(date, 93)了
galiton 2003-05-26
  • 打赏
  • 举报
回复
呵呵,我的意思就是有没有已经写好的函数给我抄抄。
钟伟海 2003-05-26
  • 打赏
  • 举报
回复
没有这样的函数,要自己写一个,
对年,月,日都要分别处理。

你说的不明白!!!
daiwoo_wang 2003-05-26
  • 打赏
  • 举报
回复
在PB中有函数RElativedate,是取指定日期相隔多少天的函数,如果要精确的知道3个月后的日期,可能要自己编程序了,因为要考虑很多细节,PB是没有以月为单位求相对日期的。比如12月30日的2个月后,应该判断是第2年2月,2月没有30号,那么函数怎么返回呢?是处理为2月的最后一天,还是认为无法取到?如果默认为2月的最后一天,还要判断润年,等等细节。应该可以参照PB的relativedate写个函数
愉快的登山者 2003-05-26
  • 打赏
  • 举报
回复
relativedate(date, 91)

1,072

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧