| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1553 人关注过本帖
标题:两个时间的月份差
只看楼主 加入收藏
shizi0
Rank: 6Rank: 6
等 级:侠之大者
威 望:4
帖 子:142
专家分:411
注 册:2012-10-2
收藏
得分:2 
set date ansi
?Mod(Abs(Val(dtoc(d1))-Val(dtoc(d2)))*100,88)
2023-04-19 22:28
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9848
专家分:27241
注 册:2012-2-5
收藏
得分:0 
以下是引用shizi0在2023-4-19 22:28:58的发言:

set date ansi
?Mod(Abs(Val(dtoc(d1))-Val(dtoc(d2)))*100,88)

d1 = DATE(2021, 11, 01)
d2 = DATE(2022, 12, 01)
? Abs(Val(dtoc(d1))-Val(dtoc(d2)))
?Mod(Abs(Val(dtoc(d1))-Val(dtoc(d2)))*100,88)

坚守VFP最后的阵地
2023-04-19 22:37
fyyylyl
Rank: 8Rank: 8
等 级:贵宾
威 望:17
帖 子:313
专家分:820
注 册:2006-5-22
收藏
得分:0 
以下是引用sdta在2023-4-19 22:37:41的发言:


d1 = DATE(2021, 11, 01)
d2 = DATE(2022, 12, 01)
? Abs(Val(dtoc(d1))-Val(dtoc(d2)))
?Mod(Abs(Val(dtoc(d1))-Val(dtoc(d2)))*100,88)

d1 = DATE(2023,03, 31)
d2 = DATE(2023, 04,01)
?Mod(Abs(Val(dtoc(d1))-Val(dtoc(d2)))*100,88)结果为1,不知是否符合楼主本意?

2023-04-20 10:29
sostemp
Rank: 4
等 级:贵宾
威 望:10
帖 子:202
专家分:284
注 册:2009-6-2
收藏
得分:2 
以下是引用fyyylyl在2023-4-20 10:29:22的发言:


d1 = DATE(2023,03, 31)
d2 = DATE(2023, 04,01)
?Mod(Abs(Val(dtoc(d1))-Val(dtoc(d2)))*100,88)结果为1,不知是否符合楼主本意?


这个=12
2023-04-20 11:16
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10609
专家分:43210
注 册:2014-5-20
收藏
得分:2 
好像只考虑“年、月”,不知对“日”有无要求?如:
2023/01/01 - 2023/01/01  
2023/01/01 - 2023/01/31
2023-04-20 11:53
东海ECS
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:Python
等 级:版主
威 望:32
帖 子:412
专家分:1646
注 册:2023-1-24
收藏
得分:2 
可以采取以下方法来计算两个时间的月份差:

将两个时间转换为时间戳,即从某个固定的时间(如1970年1月1日)开始计算的秒数。

将两个时间戳转换为对应的年份和月份,计算两个时间对应的年份和月份差。

计算两个时间之间的月份差,可以采用以下公式:

月份差 = (结束年份 - 开始年份)* 12 + 结束月份 - 开始月份


需要注意的是,计算月份差时,需要判断两个时间之间是否存在不满一个月的时间段。如果存在不满一个月的时间段,则月份差需要减去该时间段的月份。例如,如果开始时间是2021年1月1日,结束时间是2021年2月15日,则月份差为1个月,而不是2个月。

会当凌绝顶,一览众山小.
2023-04-21 22:08
快速回复:两个时间的月份差
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024648 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved