如何确定两个日期之间相隔了多少个月、周和天?
INFORMIX-SQL 7.32 (SE) 执行屏幕:
假设我的开始日期为 2010 年 2 月 15 日,结束日期为 2010 年 5 月 27 日。我可以使用“let elapsed_days = end_date - start_date”计算经过的天数,但如何将这些天数转换为 3 个月、1 周和 5 天?
我见过使用的原始计算方法,每个月四舍五入为 31 天,因为如果您将每个月的天数相加并除以 12,则平均天数为 30.5 天 每月,然后将经过的天数除以 31 得到 3.31 个月,但这种方法对于我的需求来说是不可接受的。
INFORMIX-SQL 7.32 (SE) Perform screen:
Let's say I have a start date of FEB-15-2010 and an end date of MAY-27-2010. I can calculate the number of elapsed days with 'let elapsed_days = end_date - start_date', but how can I convert these number of days into 3 months, 1 week and 5 days?
A raw calculation I've seen used, rounding every month to 31 days, since if you take the number of days in each month, add them up and divide them by 12 gives you 30.5 days average
per month, then taking elapsed days and dividing it by 31 produces 3.31 months, but this method is unacceptable for my needs.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这可能可以经受一些更严格的测试,并且肯定有空间整理输出(即删除“0 个月”子字符串),但我认为它可以让您大部分顺利完成......
即:
This could probably stand some more rigorous testing, and there is certainly scope to tidy up the output (ie remove "0 months" substrings), but I think it gets you most of the way there...
ie: