elapse()

阅读(2402) 标签: 相差, 新日期数据, , 季度, , ,

描述:

计算相差某个时间的新日期数据

语法:

elapse(dateExp, n)

备注:

算出相差n/ n/ n年的新的日期数据dateExp

取得指定日期在去年的同月同日,若无同月同日,则返回去年同月最后一天

例如:elapse@m("2009-03-31",-1) 返回2009-02-28

参数:

dateExp

给定的起始日期表达式,其结果必须为日期或标准日期格式的字符串

n

整数表达式,需要求得相差n//月的新日期,负数表示n//月前的新日期

选项:

@y

计算与指定日期相差n年的新日期数据

@q

计算与指定日期相差n季度的新日期数据

@m

计算与指定日期相差n月的新日期数据

@e

指定日期是月底时计算后的新日期数据不调整为月底,缺省将把新日期数据调整成月底,与@yqm配合使用

@s

计算与指定日期相差n秒的新的日期时间数据

@ms

计算与指定日期相差n毫秒的新的日期时间数据

 

无选项缺省时表示算出给定日期n天后的新日期数据

返回值:

日期时间

示例:

 

A

 

1

=elapse(datetime("19800227","yyyyMMdd"),5)

1980-03-03 00:00:00

2

=elapse@s(datetime("19800227","yyyyMMdd"),5)

1980-02-27 00:00:05

3

=elapse@ms(datetime("19800227","yyyyMMdd"),5)

1980-02-27 00:00:00

4

=elapse(datetime("19800227","yyyyMMdd"),-3)

1980-02-24 00:00:00

5

=elapse@y(datetime("19800227","yyyyMMdd"),-3)

1977-02-27 00:00:00

6

=elapse@q(datetime("19800227","yyyyMMdd"),-3)

1979-05-27 00:00:00

7

=elapse@m(datetime("19800227","yyyyMMdd"),-3)

1979-11-27 00:00:00

8

=elapse@s(datetime("19800227","yyyyMMdd"),-3)

1980-02-26 23:59:57

9

=elapse@ms(datetime("19800227","yyyyMMdd"),-3)

1980-02-26 23:59:59

10

=datetime("19800227","yyyyMMdd")+5

1980-03-03 00:00:00

11

=datetime("19800227","yyyyMMdd")-5

1980-02-22 00:00:00

12

=elapse@y(datetime("19770228","yyyyMMdd"),3)

1980-02-29 00:00:00

13

=elapse@ey(datetime("19770228","yyyyMMdd"),3)

1980-02-28 00:00:00

14

=elapse@q(datetime("19800229","yyyyMMdd"),1)

1980-05-31 00:00:00

15

=elapse@eq(datetime("19800229","yyyyMMdd"),1)

1980-05-29 00:00:00

16

=elapse@m(datetime("19800229","yyyyMMdd"),5)

1980-07-31 00:00:00

17

=elapse@em(datetime("19800229","yyyyMMdd"),5)

1980-07-29 00:00:00