《VFP常用函数(等级)课件.ppt》由会员分享,可在线阅读,更多相关《VFP常用函数(等级)课件.ppt(60页珍藏版)》请在三一办公上搜索。
1、,常用函数,数值型函数,1、求平方根函数,格式:SQRT()功能:返回指定数值表达式的平方根。(n)例:SQRT(64)SQRT(3*8+12),2、四舍五入函数,格式:ROUND(,n)功能:对数值表达式的值四舍五入值。(N)说明:n可为正数或负数。正数表示要保留的小数点后位数;负数表示整数部分四舍五入的位数。,例:ROUND(323.34567,3)=323.346ROUND(234566.532,-3)=235000,3、取整函数,格式:INT()功能:返回数值表达式值的整数部分。(n)说明:只取整,不四舍五入。例:INT(643.72)=643,4、取最大值函数,格式:MAX()功能:
2、计算各表达式的值,并返回其中的最大值。说明:表达式类型可以是字符型、数值型、日期型。,5、取最小值函数,格式:MIN()功能:计算各表达式的值,并返回其中的最小值。说明:表达式类型可以是字符型、数值型、日期型。,6.圆周率函数,PI()返回圆周率的值.,7.求余数函数,MOD(数值表达式1,数值表达式2)返回两数相除后的余数异号,函数值为余数加除数的值例:mod(-20,3)=1 mod(20,-3)=-1,字符型函数,1、字符串长度函数,格式:LEN()功能:返回字符表达式中字符的数目。(n)例:LEN(“AB长春123”)=9 X=“VFP程序设计”LEN(X)=11,2、产生空格函数,格
3、式:SPACE(n)功能:返回由指定数目的空格构成的字符串。(c)说明:n指明产生的空格数目,其最大值受内存容量限制。,例:SPACE(12)LEN(SPACE(12)=12,3、测试子串位置函数,格式:AT(,n)功能:返回在中出现的位置,n表示第几次出现。(n),说明:函数值为搜索首次出现子串的位置,如果没有搜索到或n值大于中包含子串的数目,则函数值为0。该函数区分搜索字符的大小写。AT(“AB”,“EETABDYAB”)=4AT(“AB”,“EETABDYAB”,2)=8AT(“AB”,“EETABDYAB”,4)=0AT(“AD”,“EETABDYAB”)=0,4、删除前后空格函数,格
4、式:ALLTRIM()功能:删除指定字符表达式的前后空格,并且返回删除空格后的字符串。(C)ALLTRIM(“北京 上海”)=北京 上海,5、截取子串函数,格式:SUBSTR(,)功能:在给定的中截取指定长度的字符串。(c)说明:n1和n2的值应为有效值。,SUBSTR(“ABCDEFG”,3,4)=“CDEF”SUBSTR(“中国 北京”,3)=“中国 北京”SUBSTR(ALLTRIM(“中国 北京”),3,2)=“国”SUBSTR(ALLTRIM(“中国 北京”),3)=“国 北京”姓名=“张三”SUBSTR(姓名,1,2)=“张”,.左、右取子串函数,LEFT(字符表达式,长度)RIG
5、HT(字符表达式,长度)例:?LEFT(abcd,2)=ab?RIGHT(abcd,2)=cd,7.大小写转换函数,LOWER(字符表达式)UPPER(字符表达式),11.字符串匹配函数,LIKE(字符表达式1,字符表达式2)字符表达式1和字符表达式2所有对应字符都匹配,返回.t.,否则返回.f.字符表达式1可以使用通配符:?:与单个字符匹配*:与任何数目字符匹配例:x=“abc”y=“abcd”?like(x,y),like(“ab*,y)like(“?b?”,x)结果:.f.t.t.,日期时间型函 数,1、当前日期函数,格式:DATE()功能:返回由操作系统控制的当前系统日期。(D)说明:
6、返回的日期为日期的显示格示,即 MM/DD/YY 格式。例:DATE()的值为03/05/01,2、当前时间函数,格式:TIME()功能:返回以24小时制、8位字符串(时:分:秒)格式的当前系统时间。(C)P97-7,3、当前日期时间函数,格式:DATETIME()功能:以日期时间值返回当前的日期和时间。(T),4、年份函数,格式:YEAR()功能:返回指定的中的年份值。(N)说明:自变量为日期型数据。函数值为一数值型数据,四位年份值。P166-23,YEAR(DATE()=2001YEAR(2000-12-20)=2000SQRT(YEAR(2000-12-20)=44.72,5、月份函数,
7、格式:MONTH()功能:返回给定的月份值。(N)说明:自变量为日期型数据,函数值为数值型数据。,6、天数函数,格式:DAY()功能:返回给定中的日期是该月份的第几天。(N)例:DAY(DATE()X=2001-03-20 DAY(X)P63-13、p69-14,转换函数,1、字符转日期函数,格式:CTOD()功能:把指定的转换成日期型数据。(D)说明:函数的自变量的结果必须是一个有效的日期,格式为“MM/DD/YY”。P75-14,2、日期转字符函数,格式:DTOC()功能:将指定的值转换为字符型数据。(C)说明:DTOC函数和CTOD函数互为反函数。P36-15、p166-24,DTOC(
8、CTOD(“12/30/99”)=12/30/99(C)SUBSTR(DTOC(2000-12-23),7,2)=00D=2001-03-10SUBSTR(DTOC(D),7,2)=01,3、字符转数值函数,格式:VAL()功能:将由数字组成的字符表达式转换成数值。(N)说明:该函数从左到右返回字符表达式中的数字,直至遇到非数值型字符时为止。若自变量的第一个字符不是数字,函数返回值为0。,4、数值转字符函数,格式:STR(,长度,小数位)功能:将指定转换成相对应的字符。(C)说明:长度为函数值字符串包含的字符个数。如果长度大于整数位数,函数值用前导空格添允;如果长度小于整数位,函数值为一串星号
9、,表示数据溢出。P61-6,x=123456.456788 STR(x,10)=123456 STR(x,3)=*STR(x,10,4)=123456.457 STR(x,10,2)=123456.46 VAL和STR是一对互为反函数。SUBSTR(STR(X,10,2),3,4)=“2345”注:有一前导空格,7.宏替换函数,&.替换出字符型内存变量的内容用.作函数结束标志例:姓名=“李小明”x=“姓名”?&x+”你好”结果:李小明你好,例:x=aabc=56?&x.bc,测试函数,1、测试数据类型函数,格式:TYPE()格式:VARTYPE()功能:计算值,并返回其计算结果的数据类型说明:
10、返回的数据类型分别为:C、N、,说明:type自变量必须用字符定界符。下表列出函数返回值的含义:,2.符号函数,格式:SIGN()功能:数值表达式0,返回数值表达式=0,返回数值表达式0,返回-,3.值域测试函数,BETWEEN(表达式1,表达式2,表达式3)判断表达式1的值是否在表达式2和表达式3之间,如果是,函数值为.t.,否则为.f.,如果表达式2和表达式3有一个空值,则结果为.null.例:x=.null.Y=100?between(150,y,y+100),between(90,x,y)结果.t.null.,4.空值(NULL)测试函数,ISNULL(表达式)测试表达式的值是否是.n
11、ull.如果是,返回.t.,否则返回.f.例:x=.null.?x,Isnull(x)结果.null.t.,5.”空”值测试函数,EMPTY(表达式)根据表达式的运算结果是否为”空”值,返回逻辑.t.或逻辑.f.关于”空”的规定:数值型:0;逻辑型:.f.;日期型:ctod()字符型:空串、空格、换行、回车例:?Empty(.null.)empty(“”)结果.f.t.,6、测试当前记录函数,格式:RECNO()功能:返回当前打开表中当前记录记录号。(N)说明:函数返回表中的有效记录的记录号。,7、测试开始标记函数,格式:BOF()功能:确定当前表中,当前记录指针是否在文件开始标记(表头)。(
12、L)说明:当函数值为.T.为记录指针指向文件开始处(第一条记录之前)。当函数值为.F.为记录指针指向表中数据项。,8、测试结束标记函数,格式:EOF()功能:确定当前表中,记录指针位置是否在表的结束标志处。(L)说明:当记录指针指向表的结束标记处(最后一条记录的下边),函数值为.T.,反之为.F.值。,9、测试表中字段个数函数,格式:FCOUNT()功能:函数值返回当前打开表中的字段的数目。(N),10、测试表中记录数目函数,格式:RECCOUNT()功能:函数值为当前表中记录的数目。(N),11、查找函数,格式:FOUND()功能:函数值为执行查找命令后,是否找到指定记录。(L)说明:执行查
13、找命令后:若找到指定记录,则函数值为.T.;若没找到指定记录,函数值为.F.。,11、分支函数,格式:IIF(,)功能:根据的值,返回或中的其中一个值。说明:根据逻辑表达式值决定函数值:逻辑表达式为.T.,函数值为的值逻辑表达式为.F.,函数值为的值,IFF(3*4-15,0,1)=0成绩=78IFF(成绩=60,“及格”,“不及格”)=“及格”姓名=“李四”IFF(姓名=“张三”,“一等奖学金”,“无奖学金”)=“无奖学金”年龄=23IFF(年龄=20,“献血”,“不献血”)=“献血”和的类型可以不相同。,增加的命令,表中数据与数组数据之间的交换,1.将表的当前记录复制到数组格式:SCATT
14、ER FIELDS MEMO TO BLANK2.将数组数据复制到表的当前记录格式:GATHER FROM FIELDS MEMO,字段变量与内存变量同名时:字段变量优先若要访问内存变量,应在内存变量前加上指示符M.或M-87-15,内存变量的清除,CLEAR MEMORY、ALLRELEASE RELEASE ALLRELEASE ALL LIKE|EXCEPT,数组,连续的一片内存单元格式:数组名(下标1,下标2)定义:DIME 数组名(下标1)DECL 数组名(下标1)PUBL数组名(下标1)赋值:自动赋.f.数组元素的名称,结束语当你尽了自己的最大努力时,失败也是伟大的,所以不要放弃,坚持就是正确的。When You Do Your Best,Failure Is Great,So DonT Give Up,Stick To The End,感谢聆听不足之处请大家批评指导Please Criticize And Guide The Shortcomings,演讲人:XXXXXX 时 间:XX年XX月XX日,