历史版本3 :获取指定日期后N个(时/分/秒)的日期值 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1. 概述编辑
我们都知道。日期函数在平时工作与生活中使用非常广泛,在日期中添加或减去指定的时间间隔也显得尤为重要。
目前官方提供了一些日期函数的运用。参考文档-日期和时间函数
类似dateadd()日期差函数,比如:
YEARDELTA(date, delta):返回指定日期后delta年的日期。
MONTHDELTA(date,delta):返回指定日期 date 后 delta 个月的日期。
DATEDELTA(date, deltadays):返回一个日期——date 后 deltadays 的日期。
但有时,我们需要获取「指定日期后N个(时/分/秒)的日期值」,如何处理呢?
2. 示例编辑
以当前时间now() = "2021-03-30 15:28:53" 为例:
通过「新增字段」 或 「新增计算字段」,分别获取2小时后,2分钟后,2秒后的日期值
公式如下:
同理:新增计算字段「2小时后,2分钟后,2秒后」,公式分别为:
2小时后:=todate(DATETONUMBER(A1)+ 2 * 3600 * 1000)
2分钟后:=todate(DATETONUMBER(A1)+ 2 * 60 * 1000)
2秒后:=todate(DATETONUMBER(A1)+ 2 * 1000)
公式解释:
序号 | 公式 | 解释 |
1 | =todate(DATETONUMBER(A1)+ N * 3600 * 1000) | 将当前时间转换成毫秒级+N时*每时3600秒*每秒1000毫秒,最后通过todate函数转换成标准日期值 |
2 | =todate(DATETONUMBER(A1)+ N * 60 * 1000) | 将当前时间转换成毫秒级+N分*每分60秒*每秒1000毫秒,最后通过todate函数转换成标准日期值 |
3 | =todate(DATETONUMBER(A1)+ N *1000) | 将当前时间转换成毫秒级+N秒*每秒1000毫秒,最后通过todate函数转换成标准日期值 |
注1:若日期函数不合法,则会用当前时间进行计算。
3. 预览结果编辑
分别将新增字段拖入到明细表中,数据格式定义成「年月日时分秒」,如图: