如何得到两个月的间隔数?(20分)

  • 主题发起人 主题发起人 jy1689
  • 开始时间 开始时间
J

jy1689

Unregistered / Unconfirmed
GUEST, unregistred user!
例如string或integer型变量:'20020701'以及'20020501'之间我想要得到的是3
我用monthsbetween或者monthspan都不能得到我想要的结果
大家看看有什么办法阿,倾囊而出了.
 
(20000701-20020501)/100+1不就行了
 
楼上的,那要是'20020101'和'20011201'呢?
result:(20020101-20011201)/100+1=?
 
up
你说的那两个函数的 参数 需是 日期型的 而不是 integer
 
use StrToDate function & IntToStr function
 
没用的,
monthsbetween(strtodate('20020701','20020501'))结果不会是整数的,
monthspan也不行,如果进行取整或者四舍五入的话,结果往往又不是我要的
 
monthsbetween(strtodate('20020701'),strtodate('20020501'));
 
(20020701-20020501)/10000*12+(20020701-20020501)/100+1
不就行了
 
20000501 20020701
result:=(2002-2000)*12+(12-abs(05-07));
 
20000501 20020701
result:=(2002-2000-1)*12+(12-abs(05-07));
这样才对,嘻
 
SQL语句
datediff(month, date1, date2)
 
楼上的,sql语句这是俺现在的办法,我是用oracle函数months_between的
to rjiajia:你的方法确实不错。
结束问题了
 
后退
顶部