BI函数字典第二期——时间日期函数

16 篇文章 0 订阅
6 篇文章 0 订阅

 

1     DATE

定义:DATE(I1,I2,I3)

返回由指定年、月、日合成的日期常量。

参数:

I1,I2,I3  为整数,分别表示年、月、日。

示例:

将指定年、月、日合成为日期常量,返回值为日期。

Date(1999,12,25)=#1999-12-25#

2     DATETOSTR

定义:DATETOSR(D), DATETOSR(D,C)

将一日期转变成字符串。

参数:

D 要转换为字符串的日期,也可以是字符串。

C  字符串的格式,
1、可忽略此参数。忽略此参数后,默认为yyyy-mm-dd
2、字符串格式中,y表示年,m表示月,d表示日
3、字符串格式中,如果是小写字母(y,m,d),则返回值取阿拉伯数字(123等);如果是大写字母(Y,M,D),返回值为汉字(一二三等)
4、字符串格式中,支持三个连续的mmm,表示将月份转换成英文

示例:

例如,日期常量为#2006-10-01#
   DATETOSTR(#2006-10-01#)=2006-10-01
   DATETOSTR(#2006-10-01#,"yyyy-mm-dd")=2006-10-01
   DATETOSTR(#2006-10-01#,"yyyy年mm月dd日")=2006年10月01日
   DATETOSTR(#2006-10-01#,"YYYY年MM月DD日")=二零零六年十月一日
   DATETOSTR(#2006-10-01#,"yy年mm月dd")=06年10月01
   DATETOSTR(#2006-10-01#,"YY年MM月DD")=零六年十月一

   下面的示例中,参数为字符串表示的日期:
   DATETOSTR('20010801','ddmmmyyyy')=08 Aug 2001

下面的示例中,函数的参数为报表模板中使用的日期型的报表参数变量:
DATETOSTR(@bbq,'yyyy年mm月dd日'),其中@bbq为日期型的报表参数变量。例如,报表模板中在表头上显示数据期时,常这样设置:
“数据期:<#=datetostr(@month,'yyyy年mm月')#>”。

3     DAY

定义:DAY(D)

返回日期中的日,返回值为整数。

参数:

D 参数可以为日期,也可以为字符串表示的日期。

示例:

返回日期中的日,返回值为整数。

Day(#1999-12-1#)=1
Day(today())=11

下面的示例中,参数为字符串表示的日期:
Day('20010102')返回02
Day('2001-01-02')返回02

4     DAYS

定义:DAYS(D1,D2)

返回两个日期之间的天数。

参数:

D1,D2 分别表示日期,也可以为用字符串表示的日期。

示例:

返回两个日期之间的天数。天数中包括两头的日期。返回值为整数。

DAYS(#1999-12-1#,#1999-12-10#)=10
days(today(),strtodate('20060101','yyyymmdd'))
days(today(),'20060101')
days('20060101',today())

下面的示例中,函数的参数为报表模板中使用的日期型的报表参数变量:
DAYS(@bbqq,@bbqz),其中@bbqq、@bbqz为日期型的报表参数变量

5     DXDATE

定义:DXDATE(D)

将日期变成大写格式。

参数:

D 参数可以为日期,也可以为字符串表示的日期。

示例:

将指定日期变成大写格式,返回值为字符串。

DXDATE(#1999-01-01#)="一九九九年一月一日"

 

下面的示例中,参数为字符串表示的日期:

DXDATE('19990101')返回一九九九年一月一

DXDATE('1999-01-01')返回一九九九年一月一

6     MONTH

定义:MONTH(D)

回日期中的月份。

参数:

D 参数可以为日期,也可以为用字符串表示的日期。

示例:

返回日期中的月份,返回值为整数。

Month(#1999-12-1#)=12

 

下面的示例中,参数为字符串表示的日期:

Month('20010101')返回01

Month('2001-01-01')返回01

7     NOW

定义:NOW()

返回系统当前时间,返回是的服务器上的系统时间。

参数:

无。

示例:

返回系统当前时间,返回值为字符串,格式为:HH:MM:SS。

NOW()="12:56:50"

8     OFFSETDATE

定义:OFFSETDATE(D,I1,I2,I3)OFFSETDATE(D,I1)OFFSETDATE(D,I1,I2)

计算某日期之前(后)若干天(或者月、年)的日期,如offsetdate(today(),-1)求出去年的今天。

参数:

D 表示日期。

I1,I2,I3为整数,分别表示指定日期前(后)的若干年、月、日。小于0,表示是指定日期前的若干年、月、日;大于0,表示是指定日期后若干年、月、日

示例:

计算某日期之前(后)若干天(或者月、年)的日期,返回值为日期。

offsetdate(today(),-1),表示是去年的今天

9     STRTODATE

定义:STRTODATE(C1),STRTODATE(C1,C2)

将一字符串转变成一日期。

参数:

C1 将要转换为日期的字符串,或者日期。

C2 1、指定要转换的字条串的日期格式,可忽略。忽略此参数后,默认转换的日期格式为“yyyy-mm-dd”;
2、字符串中,y表示年,m表示月,d表示日
3、字符串如果为小写字母(y/m/d),则返回值为阿拉伯数字(123等);如果为大写字母(Y/M/D),则返回值为汉字(一二三等)

示例:

将指定格式的字符串转变成一日期,返回值为日期。

strtodate("2006-10-01")= #2006-10-01#
strtodate("2006/10/01","yyyy/mm/dd") = #2006/10/01#
strtodate("2006年10月01","yyyy年mm月dd日") = 2006年10月01日
strtodate("2006年10月01","YYYY年MM月DD日") = 二零零六年十月一日

10  TODAY

定义:TODAY ()

以日期常量的形式返回当天的日期。

参数:

示例:

以日期常量的形式返回当天的日期。

TODAY()=#2006-07-25#

11  WEEKDAY

定义:WEEKDAY(D)

返回指定日期为一周中的第几天。

参数:

D 指定的日期,也可以是字符串表示的日期。

示例:

返回指定日期为一周中的第几天。返回类型为整型。

Weekday(#2005-01-03#)=2
2005年01月03日为星期一,为本周的第2天,所以返回值为2。(星期日为本周的第1天)

下面示例中,参数为字符串表示的日期:
Weekday('20010101')返回1
Weekday('2001-01-01')返回1

12  ABS

定义:WOFM(D)

返回日期Date所在的周是所在月的第几周,第一周从本月的第一个周一算起。

参数:

D 指定的日期。

示例:

返回日期Date所在的周是所在月的第几周。

假如今天是2005年6月21日,则 WOFM(today())返回的值为3,表示是第3周;因为2005年6月的1--4日所在周的周一在上月的最后一周,所以是第3周。

13  YEAR

定义:YEAR(D)

返回日期中的年份,返回值为整数。

参数:

D 指定的日期,也可以为用字符串表示的日。

示例:

返回日期中的年份,返回值为整数。

Year(#2006-08-01#)=2006

下面示例中,参数为字符串表示的日期:
YEAR('20010101')返回2001
YEAR('2001-01-01')返回2001

本文来自亿信社区  作者:tangmq

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值