VF常用函数列表
- 格式:doc
- 大小:42.50 KB
- 文档页数:11
1 算术运算符:+ - * / %^ **2 关系运算符:> < >= <= != <> =3 逻辑运算符:.and. .or. .not..AND. 与:两边有一个是假值,则为假7>8.or.8<9.OR. 或:两边有一个是真值,则为真.NOT. 非:真变假,假变真4 字符运算符:+ -$+是将两个字符串连接起来例:"ABC "+"DEF" 得ABC DEF- 在连接时将前面字符串的后面的空格删除"ABC "-"DEF" 得ABCDEF$ 子串包含测试例:"ab"$"abcd"5 赋值命令STORE 8 TO X 将数值8赋给变量XX=8,Y=96 常用数值函数求绝对值函数:ABS(数) 例ABS(-8) 结果为8 SIGN()同ABS()求平方根函数:SQRT(数) 例SQRT(16) 结果为4求圆周率函数:PI()求整函数:INT(数) 例INT(3.6) 结果为3四舍五入函数:ROUND(数) 例ROUND(3.5567,1) 结果为3.6求余函数:MOD(数值1,数值2) 例MOD(10,3) 结果为1求最大值函数:MAX(数值列表) 例:MAX(567,3,7,34) 结果为567求最小值函数:MIN(数值列表) 例:MIN(567,3,7,34) 结果为37 常用字符函数求字符串长度:LEN(字符串) 例:LEN("ABCDEF") 结果为6大写转小写:LOWER(字符)小写转大写:UPPER(字符)空格生成函数:SPACE(数值) 例:SPACE(5) 生成5个空格删除左空格函数:LTRIM(字符表达式)例:TRIM("CHINA") 结果为CHIAN删除右空格函数:TRIM(字符表达式)例:TRIM("CHINA") 结果为CHIAN删除前后空格函数:ALLTRIM(字符表达式)例:TRIM(" CHINA") 结果为CHIAN从左面取子串函数:LEFT(字符表达式,长度) 例:LEFT("ABCD",2) 结果为AB从右面取子串函数:RIGHT(字符表达式,长度) 例:RIGHT("ABCD",2) 结果为CD从指定位置取子串函数:SUBSTR(字符表达式,起始位置,长度) 例:SUBSTR("ABCDEF",2,3) 结果为BCD计算子串出现的次数函数:OCCURS(字符表达式1,字符表达式2) 例:OCCURS("AB","ABCDABDEFAB") 结果为 3求子串位置函数:A T(字符表达式1,字符表达式2) 例:A T("中国",“中华人民共和中国”)结果为13求子串位置函数:A TC(字符表达式1,字符表达式2) 同上注意:A T()和A TC()的最大区别是,A TC不区分大小写字符,A T()区分大小写字母子串替换函数:STUFF(字符表达式1,起始位置,长度,字符表达式2)例:STUFF("ABCDEFG",2,4,"1234") 结果为A1234FG 从2位开始用后面的字符串替换,替换4位,注意:如果后面的字符串不足指定的值,则不足的地方删除如果后面的字符串大于指定的值,则多于的插入到里面字符替换函数:CHRTRN(字符表达式1,字符表达式2,字符表达式3) 如果字符表达式1中有字符表达式2的字符串,则用字符表达式3替换例:CHRTRN("ABCDEFGABEFA","AB","12") 结果为12CDEFG12EFA字符匹配函数:LIKE(字符表达式1,字符表达式2) 判断两上字符串的对应位置上的字符是否相等,如果相等,返回真值,否则返回假值8 时间函数日期函数:DA TE()时间函数:TIME()日期时间函数:DA TETIME()求年份函数:YEAR(DA TE())求月份函数:MONTH(DA TE())求天数函数:DA Y(DA TE())求时,分,秒函数:HOUR(DA TETIME()) MINUTE(DA TETIME()) SEC(DA TETIME()) 9 数值型转换成字符型函数格式:STR(数值表达式,长度,小数位)例:STR(567.656,6,2) 结果为567.66 注意:会自动四舍五入10 字符串转换成数值函数格式:V AL(字符表达式) 例:V AL("12.34") 结果为数值型的12.3411 字符转成日期CTOD(字符表达式)12 日期转成字符DTOC(日期)13 字符转成日期时间型CTOT(字符表达式)14 日期时间转成字符型TTOC(日期时间)15 宏替换函数&16 数组数的集合。
VFP常用函数总汇VFP常用函数总汇VFP常用函数使用说明1、数值运算函数函数操作例结果SQRT(x) 求平方根 SQRT(9) 3INT(x) 取整数 INT(3.14) 3ROUND(x) 四舍五入 ROUND(3.14159,4) 3.1416MOD(x,y) 求X除以Y的余数 MOD(25,4) 1MAX(x,y) 求X,Y中的最大值 MAX(7,8) 8MIN(x,y) 求X,Y中的最小值 MIN(1,2,3) 12、字符中操作函数函数名操作例结果UPPER(S)小写字母 UPPER(abc) ABCLOWER(S)大写字母 LOWER(ACD) acdLEN(S)求字符串的长度 LEN("中国1号") 7AT(S1,S2)在字符串S2,找字符串S1 AT("H","CHINA") 2SUBSTR(S,I,N)在S字符串中的第I个字符起取N个字符SUBSTR('TECHNOLO',3,3) CHNLEFT(S,N)从字符串S左边取N个字符 LEFT(“中国人”,4)中国RIGHT(S,N)从字符串S右边取N个字符S=‘12345’RIGHT(S,3) 345SPACE(N)生成N个空格 "合计"+SPACE(2)+"123" 合计123 TRIM(S)消除字符串尾部空格 TRIM("姓名 ") 姓名ALLTRI(S)消除字符串中所有空格 ALLTRIM("李丽")李丽STUFF(S1,N1,N2,S2) 用字符串S2替换S1中第N1个字符起的N2个字符 STUFF("NOW",2,1,"E") NEW& 宏替换P=“G2”USE &P USE G23、日期和时间函数函数名操作例结果DATE()求当前日期 DATE() 2001/11/12DATETIME() 求当前日期和时间 DATETIME() 2001/11/12/0:22:33amYEAR(D)求年份 YEAR(DATE()) 2001MONTH(D)求月份(数值) MONTH(DATETIME()) 11CMONTH(D)求月份(字符)MONTH(DATETIME()) NovenberDAY(D)求日期 DAY(DATE()) 12DOW(D)求星期几(数值) DOW(DATE()) 1CDOW(D)求星期几(英文) CDOW(DATE()) sundayTIME(D)求当前时间 TIME(DATE()) 10:20:38am4、数据类型转换函数函数名操作例结果ASC(S)求第一个字符串的ASCII码 ASC("what") 87CHR(N)求ASCII码的字符 CHR(87) wSTR(R,L,D) 数值转换成字符,L为长度,D为小数位数 X=3.1415STR(X,6,2) 3.14VAL(S)字符串转换为数值 VAL("123") 123.00CTOD(S)字符串转日期 CTOD('11/01/2002') 11/01/2002DTOC(D)日期转换成字符串 DTOC(DATE()) 11/01/2002DTOS(D)把日期转成年月日式的字符串DTOS(DATE()) 20021101CTOT(C)字符串转成日期时间型CTOT(11/01/2002 10:30:50am) 11/01/2002 10:30:50amDTOT(D)日期型转为日期时间型DTOT(DATE()) 11/25/2001 00:00:01amTTOC(T)日期时间型转为字符型TTOC(DATETIME()) 11/25/2001 00:00:01amTTOD(T)日期时间型转为日期型TTOD(DATETIME()) 11/25/2001IIF(LE,E1,E2) 逻辑判断 IIF(A>0,"YES","NO") YES5、检测函数函数名操作例结果RECNO()检测当前记录号 RECNO() 1RECCOUNT()检测当前记录数 RECCOUNT() 12BOF()开始记录 BOF() 1EOF()最后记录 EOF() 12FOUND()返回查找结果 FOUND() .T.ROW()返回当前行坐标 ROW() 1COL()返回当前列坐标 COL() 1SYS(N)返回系统状态 SYS(13)联机状态。
VFP常用函数使用说明1、数值运算函数函数操作例结果SQRT(x) 求平方根SQRT(9)3INT(x) 取整数INT(3.14)3ROUND(x) 四舍五入 ROUND(3.14159,4) 3.1416MOD(x,y) 求X除以Y的余数MOD(25,4) 1MAX(x,y) 求X,Y中的最大值MAX(7,8) 8MIN(x,y) 求X,Y中的最小值MIN(1,2,3) 12、字符中操作函数函数名操作例结果UPPER(S)小写字母UPPER(abc) ABCLOWER(S)大写字母LOWER(ACD) acdLEN(S)字符串的长度 LEN("中国1号")7AT(S1,S2)在字符串S2,找字符串S1 AT("H","CHINA") 2SUBSTR(S,I,N)在S字符串中的第I个字符起取N个字符SUBSTR('TECHNOLO',3,3) CHNLEFT(S,N)从字符串S左边取N个字符 LEFT("中国人",4)中国RIGHT(S,N)从字符串S右边取N个字符S=‘12345'RIGHT(S,3)345SPACE(N)生成N个空格 "合计"+SPACE(2)+"123" 合计123TRIM(S)消除字符串尾部空格 TRIM("姓名 ") 姓名ALLTRI(S)消除字符串中所有空格 ALLTRIM("李丽")李丽STUFF(S1,N1,N2,S2) 用字符串S2替换S1中第N1个字符起的N2个字符 STUFF("NOW",2,1,"E")NEW& 宏替换 P="G2" USE &P USE G23、日期和时间函数函数名操作例结果DATE()求当前日期DATE() 2001/11/12DATETIME() 求当前日期和时间DATETIME() 2001/11/12/0:22:33amYEAR(D)求年份YEAR(DATE()) 2001MONTH(D)求月份(数值)MONTH(DATETIME()) 11CMONTH(D)求月份(字符)MONTH(DATETIME()) NovenberDAY(D)求日期DAY(DATE()) 12DOW(D)求星期几(数值)DOW(DATE())1CDOW(D)求星期几(英文) CDOW(DATE())sundayTIME(D)求当前时间TIME (DATE())10:20:38am4、数据类型转换函数函数名操作例结果ASC(S)求第一个字符串的ASCII码ASC("what" ) 87CHR(N)求ASCII码的字符 CHR(87) wSTR(R,L,D) 数值转换成字符,L为长度,D为小数位数X=3.1415STR(X,6,2) 3.14VAL(S)字符串转换为数值VAL("123") 123.00CTOD(S)字符串转日期 CTOD('11/01/2002') 11/01/2002DTOC(D)日期转换成字符串 DTOC(DATE()) 11/01/2002DTOS(D)把日期转成年月日式的字符串 DTOS(DATE()) 20021101CTOT(C)字符串转成日期时间型CTOT(11/01/2002 10:30:50am) 11/01/2002 10:30:50amDTOT(D)日期型转为日期时间型DTOT(DATE())11/25/2001 00:00:01amTTOC(T)日期时间型转为字符型 TTOC(DATETIME()) 11/25/2001 00:00:01amTTOD(T)日期时间型转为日期型 TTOD(DATETIME()) 11/25/2001IIF(LE,E1,E2) 逻辑判断IIF(A>0,"YES","NO") YES5、检测函数函数名操作例结果RECNO()检测当前记录号RECNO()1RECCOUNT()检测当前记录数 RECCOUNT()12BOF()开始记录BOF()1EOF()最后记录EOF()12FOUND()返回查找结果FOUND () .T.ROW()返回当前行坐标ROW()1COL()返回当前列坐VF常用命令和程序命令一、主要命令:1、CREATE作用:建立一个新的表。
Visual FoxPro常用函数汇总表函数分类1、数学函数函数用途ABS(<数值表达式>)绝对值,|x|CEILING(<数值表达式>) >=自变量的最小整数EXP(<数值表达式>)对基E的幂,e=2.71828 FLOOR(<数值表达式>) <=自变量的最大整数INT(<数值表达式>)取整(舍尾)自变量LOG(<数值表达式>)自变量的自然对数,ln x LOG10(<数值表达式>)自变量的普通对数,lg x MAX(<表达式1>,<表达式2>)两个值的最大值MIN(<表达式1>,<表达式2>)两个值的最小值MOD(<数值表达式1>,<数值表达式2>)求余数RAND([<数值表达式1>])返回伪随机数ROUND(<数值表达式1>,<数值表达式2>)四舍五入第一个自变量SIGN(<数值表达式>)自变量的符号SQRT(<数值表达式>)平方根(正根)2、字符串操作函数函数用途&<内存变量> 用于代替内存变量内容LEN(<字符串表达式>)返回字符串表达式的字符个数SPACE(<数值表达式>)生成空格SUBSTR(<字符串表达式>,<数值表达式n>[,<数值表达式L>])求子字符串,从指定的字符串表达式第n个开始,总长为L的字符串LOWER(<字符串表达式>)将字符串字母转换成小写字母UPPER(<字符串表达式>)将字符串字母转换成大写字母TRIM(<字符串表达式>)删除字符串尾空格ASC(<字符串表达式>)返回字符串表达式最左边的第一个字符的ASCII码CHR(<数值表达式>)将数值表达式转换成字符AT(<字符串表达式1>,<字符串表达式2>[,<数值表达式n>])确定字符串表达式1在字符串表达式2中的位置,n为字符串表达式第几次出现STR(<数值表达式>[,<数值表达式L>][,<数值表达式n>)将数值转换为字符串,L为数值表达式总长,n为小数位数VAL(<字符串表达式>)将数字字符串转换为数字TYPE(<表达式>)检测表达式值的数据类型LTRIM(<字符串表达式>)删除字符串左部空格RTRIM(<字符串表达式>)删除字符串右部空格LEFT(<字符串表达式>,<数值表达式n>)取字符串左边部分字符,n为返回的字符个数RIGHT(<字符串表达式>,<数值表达式n>)取字符串右边部分字符,n从右边截取字符个数3、表(.dbf)操作函数函数用途BOF([<工作区号或别名>])查表文件开始函数EOF([<工作区号或别名>])表文件结尾测试函数RECNO([<工作区号或别名>])测试当前或指定工作区表的当前记录号DELETED([<工作区号或别名>])记录删除测试函数FILE(<"字符串">)测试文件是否存在函数DBF([<工作区号或别名>])检测表的文件名函数4、日期、时间函数函数用途DATE()查系统当前日期函数TIME([<数值表达式>])查系统当前时间函数YEAR(<日期型表达式>|<日期时间型表达式>)由日期查年函数MONTH(<日期型表达式>|<日期时间型表达式>)从日期查月份函数CMONTH(<日期型表达式>|<日期时间型表达式>)由日期查月份名函数DAY(<日期型表达式>|<日期时间型表达式>)从日期查当月的日函数DOW(<日期型表达式>|<日期时间型表达式>[,<数值表达式>])由日期查星期函数CDOW(<日期型表达式>|<日期时间型表达式>)从日期查星期名函数DTOC(<日期型表达式>|<日期时间型表达式>)日期转换为字符函数CTOD(<字符串表达式>)字符串转换为日期函数CTOT(<字符串表达式>)返回日期时间值函数TTOC(<日期时间型表达式>)返回字符值5、显示、打印位置函数函数用途ROW()判断光标行位置函数COL()判断光标列位置函数INKEY([<数值表达式>])检测用户所击键对应的ASCII码函数,数值表达式以秒为单位等待击键的时间6、其他函数函数用途DISKSPACE()返回默认磁盘驱动器中可用字节数函数OS()检测操作系统名称的函数VERSION()返回VFP版本号的函数。
VisualFoxPro磁盘_目录_文件函数ADIR()将文件信息存放到数组中,然后返回文件个数。
CURDIR()返回当前目录或文件夹。
DEFAULTEXT()如果一个文件没有扩展名,则返回一个带新扩展名的文件名。
DIRECTORY()若在磁盘上存在指定的目录,返回真(.T.)。
DISPLAYPA TH()为显示而截去长路径名到指定长度。
DRIVETYPE()返回指定驱动器的类型。
FDATE()返回文件最近一次修改的日期或日期时间。
FILE()如果在磁盘上找到指定的文件,则返回“真”(.T.)。
FILETOSTR()将一个文件的内容返回为一个字符串。
FORCEEXT()返回一个字符串,使用新的扩展名替换旧的扩展名FORCEPATH()返回一个文件名,使用新路径名代替旧文件名FTIME()返回最近一次修改文件的时间。
FULLPATH()返回指定文件的路径或相对于另一文件的路径。
GETDIR()显示“选择目录”对话框,从中可以选择目录或文件夹。
GETFILE()显示“打开”对话框,并返回选定文件的名称。
JUSTDRIVE()从完整路径中返回驱动器的字母。
JUSTEXT()从完整路径中返回三字母的扩展名。
JUSTFNAME()返回完整路径和文件名中的文件名部分。
JUSTPATH()返回完整路径中的路径名。
JUSTTEM()返回完整路径和文件名中的根名(扩展名前的文件名)。
LOCFILE()在磁盘上定位文件并返回带有路径的文件名。
PUTFILE()激活“另存为…”对话框,并返回指定的文件名。
STRTOFILE()将一个字符串的内容写入一个文件。
SYS(3)返回一个合法文件名,可用来创建临时文件。
SYS(5)返回当前VisualFoxPro的默认驱动器。
SYS(7)返回当前格式文件的名称。
SYS(2000)返回一个按字母排序的与文件名和扩展名梗概匹配的第一个文件名。
SYS(2003)返回默认驱动器或卷上的当前目录或文件夹的名称。
VF的一些常用函数常用函数Visual FoxPro提供了一批标准丰富,灵活运用这些函数不仅可以简化许多运算,而且可以加强Visual FoxPro的许多功能。
在使用Visual FoxPro的函数时,应注意以下几点:? 准确地掌握函数功能。
? 每一个函数都有一个返回值。
函数的返回值有确定的类型,因此在使用函数时特别要注意类型匹配。
函数对其参数的类型也有要求,否则将产生类型不匹配的语法错误。
Visual FoxPro的函数按其功能大致可以分为数值运算函数、字符处理函数、转换函数、日期和时间函数、测试函数以及数据库函数等。
求自然对数函数【格式】LOG(<数值表达式>)【功能】求数值表达式值的自然对数。
【例】求ln e的自然对数值。
? LOG(2.718)1.000 && 显示自然对数值四舍五入函数ROUND()【格式】ROUND(<数值表达式1>,<数值表达式2>)【功能】<数值表达式1>是要被四舍五入处理的数值,<数值表达式2> 指定四舍五入后要求保留的小数位数。
本函数按指定的小数位数对数值进行四舍五入处理。
【例】求最大值、最小值函数?ROUND(86.6265,0) 87?ROUND(86.6265,1) 86.63.【格式】MAX | MIN(<数值表达式1>,<数值表达式2>[,<数值表达式3>,…])【功能】求多个数值表达式中的最大值或最小值。
【例】比较值的大小。
?MAX("WE","YOU") YOU?MIN(CTOD("12/20/03"),CTOD("10/14/99"))10/14/99取模函数【格式】MOD(<数值表达式1>,<数值表达式2>)【功能】取数值表达式1除以数值表达式2所得的余数。
VFP常用编程命令及常用函数常用编程命令及常用函数注:在语法中如用方括号“[]”括起来的词句,表示可以不用。
常用命令假设(if...endif) 循环(dowhile...enddo)分支(do case...endcase)赋值(store...to) 调用表单(do form) 调用子程序(do)返回调用程序(return) 启动事件处理(readevents)清除事件处理(clearevents)开关命令执行状态(set talkon/off)结束程序(cancel)常用函数数值转换字符(str()) 字符转换数值(val()) 取系统日期(date())取年份(year()) 取月份(month()) 取天日(day())取整(int()) 四舍五入(round()) 删除标记(delete())记录号(recno()) 记录数(reccount()) 找到记录(found())表结尾(eof()) 表开头(bof()) 消除后续空格(trim())消除前导空格(ltrim())假设语句根据一逻辑表达式的值,有条件的执行一组命令。
语法:IF 逻辑表达式 [THEN]程序组1[ELSE程序组2]ENDIF参数:逻辑表达式代表一逻辑值,如果这逻辑值为真,系统执行程序组1,否则不执行程序组1,如果有else及程序组2的话,则执行程序组2,如没有则什么也不执行,直接执行endif后面的语句。
备注:在if...endif之间还可以有if...endif,即该命令是可以嵌套的。
then可以有也可以没有,对程序没有影响。
else及程序组2可以有也可以没有,但如果有的话,在逻辑表达式的值为假时,程序组2将被执行。
if 与endif必须配对使用,即有一个 if 必须有一个endif,否则程序会出错。
举例:例1:假如分数字段的值大于等于90,则让等级字段的值为“优”,并显示该记录。
程序如下:if 分数>=90replace 等级 with '优'displayendif例2:在数据库中可以把性别字段设为逻辑型,“真”代表“男”,“假”代表“女”,但显示时不能显示真、假,否则别人看不懂,而应显示男、女,因此我们设一变量xb,根据性别字段的具体值,将xb的值设为男或女,然后在需要的时候显示xb的值即可。
常用函数1、数值函数Abs (数值表达式) 返回表达式的绝对值Sign(数值表达式) 返回表达式的符号:表达式为正数(1)为负数(-1)为零(0)Sqrt(数值表达式) 返回表达式的平方根。
(即开方)Pi() 返回圆周率即3.14Int(数值表达式) 返回表达式的整数部分Ceiling(数值表达式) 返回大于等于表达式的最小整数Floor(数值表达式) 返回小于等于表达式的最大整数Round(数值表达式,四舍五入的位置) 返回表达式四舍五入后的值Mod(被除数,除数) 返回两个数相除后的余数Max(数值表达式1,数值表达式2……)返回其中的最大值Min(数值表达式1,数值表达式2……)返回其中的最小值2、字符函数Len(字符表达式) 返回表达式值的长度(即表达式所包含的个数)Lower(字符表达式) 将表达式中的大写字母变为小写字母upper(字符表达式) 将表达式中的小写字母变为大写字母space(字符表达式) 返回指定的空格trim(字符表达式) 去掉表达式值的尾部空格ltrim(字符表达式) 去掉表达式值的前部空格alltrim(字符表达式) 将表达式值的前后空格都去掉left(字符表达式,长度) 从表达式的左边取指定的长度right(字符表达式,长度) 从表达式的右边取指定的长度substr(字符表达式,起始位置,长度) 从表达式的起始位置取指定的长度,若无长度则从起始位置一直取到最后occurs(字符表达式1,字符表达式2) 返回表达式1在表达式2中出现的次数at(字符表达式1,字符表达式2,表达式1在2中第几次出现) 返回表达式1的首字符在2中出现的位置。
区分大小写atc(字符表示1,字符表达式2,表达式1在2中第几次出现) 同at( ),但不区分大小写stuff(字符表达式1,起始位置,长度,字符表达式2)用表达式2的值替换表达式1中由起始位置和长度指明的内容chrtran(字符表达式1,字符表达式2,字符表达式3) 当表达式1中的一个或多个相同字符与表达式2中的某个字符一样时,就用表达式3中的对应字符替换这些字符like(字符表达式1,字符表达式2)比较2个表达式对应位置上的字符,若都匹配函数值为.T.,否则为.F.(表达式1中可以包含通配符*和?)3、日期和时间函数Date() 当前系统日期,函数值为日期型Time()当前系统时间,函数值为字符型Datetime() 当前系统日期时间,函数值为日期时间型Year(日期表达式)返回表达式中日期的年份Month(日期表达式)返回表达式中日期的月份Day(日期表达式)返回表达式中日期的天数Hour(日期时间表达式) 返回日期时间表达式中的小时部分minute(日期时间表达式) 返回日期时间表达式中的分钟部分sec(日期时间表达式) 返回日期时间表达式中的秒数部分4、数据类型转换函数Str(数值表达式,长度,小数位数) 将数值转换成字符串Val(字符表达式) 将字符串转换成数值Ctod(字符表达式) 将字符串转换成日期Ctot(字符表达式) 将字符串转换成日期时间Dtoc(字符表达式,1) 将日期转换成字符串。
1.绝对值和符号函数格式:ABS(<数值表达式>)SIGN(<数值表达式>)例如:ABS(-5)=5,ABS(4)=4,SIGN(8)=1,SIGN(-3)=-1,SIGN(0)=02.求平方根表达式格式:SQRT(<数值表达式>)例如:SQRT(16)=4,它与开二分之一次方等同。
3.圆周率函数格式:PI()4.求整数函数格式:INT(<数值表达式>)返回数值表达式的整数部分CEILING(<数值表达式>)返回大于或等于表达式的最小整数FLOOR(<数值表达式>)返回小于或等于表达式的最大整数例如:INT(5.8)=5.8,INT(-7.8)=-7,CEILING(6.4)=7,CEILING(-5.9)=-5FLOOR(9.9)=95.四舍五入函数格式:ROUND(<数值表达式1>,<数值表达式2>)功能:返回制定表达式在制定位置四舍五入的结果例如:ROUND(345.345,2)=345.35,ROUND(345.345,1)=345.3,ROUND(345.345,0 )=345,ROUND(345.345,-1)=3506.求余函数格式:MOD(<数值表达式1>,<数值表达式2>)例如:MOD(10,3)=1 MOD(10,-3)=-2 MOD(-10,3)=2 MOD(-10,-3)=-1求余数的规律:1.首先按照两数的绝对值求余2.表达式1的绝对值大于表达式2的绝对值,则余数为表达式1的值3.余数取表达式1的正负号4.若两数异好号,余数在加上表达式2的值为最终的结果7. 求最大值和最小值函数MAX(数值表达式列表)MIN (数值表达式列表)例如:MAX(2,3,5)=5 MAX(…2‟,‟12‟,‟05‟)=2 MAX(…汽车‟,‟飞机‟,‟轮船‟) 字符串比较的规律:字符串比较首先比较第一个字母,如果有结果那就不用在进行比较了。
VFP函数大全一、数值函数数值函数用于数值运算,其自变量与函数都是数值型数据。
1.取绝对值函数ABS( )【格式】ABS(<nExp>)【功能】计算nExp的值,并返回该值的绝对值。
2.指数函数EXP( )【格式】EXP(<nExp>)【功能】求以e为底、nExp值为指数的幂,即返回ex的值。
3.取整函数INT( )【格式】INT(<nExp>)【功能】计算nExp的值,返回该值的整数部分。
4.上界函数CEILING( )【格式】CEILING(<nExp>)【功能】计算nExp的值,返回一个大于或等于该值的最小整数。
5.下界函数FLOOR( )【格式】FLOOR(<nExp>)【功能】计算nExp的值,返回一个小于或等于该值的最大整数。
6.自然对数函数LOG( )【格式】LOG(<nExp>)【功能】求nExp的自然对数。
nExp的值必须为正数。
7.常用对数函数【格式】LOG10(<nExp>)【功能】求nExp的常用对数。
nExp的值必须为正数。
8.平方根函数SQRT( )【格式】SQRT(<nExp>)【功能】求非负nExp的平方根。
9.最大值函数MAX( )和最小值函数MIN( )【格式】MAX(<nExp1>,< nExp2>[,< nExp3>...])MIN(<nExp1>,< nExp2>[,< nExp3>...])【功能】返回数值表达式中的最大值MAX( )和最小值MIN( )。
10.求余数函数MOD( )【格式】MOD(<nExp1>,<nExp2>)【功能】返回nExp1除以nExp2的余数。
余数的小数位数与nExp1相同,符号与nExp2相同。
11.四舍五入函数ROUND( )【格式】ROUND(<nExp1>,< nExp2>)【功能】返回nExp1四舍五入的值,nExp2表示保留的小数位数。
常用函数函数是系统为实现一些特定功能而设置的内部程序,作为系统的一部分供用户使用.Visual Foxpro 提供了500多个函数,功能比较强大,为程序设计和软件开发提供了许多方便.函数的基本形式为: 函数名([<操作数表达式>])函数的操作有三种情况:有一部分函数的操作数由系统规定,用户不必输入,此时函数无操作数,其形式为: 函数名(); 有一部分函数的操作数必须由用户输入;还有一部分函数的操作数可以由用户来指定,如用户不指定,系统就按有关规定给出.对于后两种情况,输入的操作数就相当于一般函数的自变量. Visual Foxpro对每个函数自变量的个数、类型以及函数值的类型都有明确的规定,在使用函数时必须遵循这些规定.学习函数必须掌握它输入输出的数据类型.按Visual Foxpro函数的功能和用途,可将函数分为11大类型:数值和数学函数、字符型函数、日期时间函数、转换函数、测试函数、数据库和表函数、数组函数、对象特性函数、SQL查询函数、菜单和窗口函数、其它函数。
我们只介绍部分最常用函数。
一、数值和数学函数该类函数的输入均为数值型。
输出除了其中的确定函数为逻辑型外,其它为数值型。
(一)一般数值函数(1)取整函数格式:INT(<数值表达式>)该函数返回<数值表达式>的整数部分(舍尾).(2)向上取整函数格式:CEILING(<数值表达式>)该函数返回不小于<数值表达式>的最小整数。
(3)向下取整函数格式:FLOOR(<数值表达式>)该函数返回不大于<数值表达式>的最大整数。
例:?INT(3.14),INT(-3.14),CEILING(3.14),CEILING(-3.14),FLOOR(3.14),FLOOR(-3.14)3 -34 -3 3 -4(4)四舍五入函数格式:ROUND(<数值表达式1>,<数值表达式2>)该函数要求保留小数位。
VF常用函数列表 数值函数: 1.绝对值和符号函数 格式:ABS() SIGN() 例如:ABS(-5)=5,ABS(4)=4,SIGN(8)=1,SIGN(-3)=-1,SIGN(0)=0 2.求平方根表达式 格式:SQRT() 例如:SQRT(16)=4,它与开二分之一次方等同。 3.圆周率函数 格式:PI() 4.求整数函数 格式:INT()返回数值表达式的整数部分 CEILING()返回大于或等于表达式的最小整数 FLOOR()返回小于或等于表达式的最大整数 例如: INT(5.8)=5.8,INT(-7.8)=-7,CEILING(6.4)=7,CEILING(-5.9)=-5 FLOOR(9.9)=9 5.四舍五入函数 格式:ROUND(,) 功能:返回制定表达式在制定位置四舍五入的结果 例如: ROUND(345.345,2)=345.35,ROUND(345.345,1)=345.3,ROUND(345.345,0)=345,ROUND(345.345,-1)=350
6.求余函数 格式:MOD(,) 例如: MOD(10,3)=1 MOD(10,-3)=-2 MOD(-10,3)=2 MOD(-10,-3)=-1 求余数的规律:1.首先按照两数的绝对值求余 2.表达式1的绝对值大于表达式2的绝对值,则余数为表达式1的值 3.余数取表达式1的正负号 4.若两数异好号,余数在加上表达式2的值为最终的结果 7. 求最大值和最小值函数 MAX(数值表达式列表) MIN (数值表达式列表) 例如:MAX(2,3,5)=5 MAX(‘2’,’12’,’05’)=2 MAX(‘汽车’,’飞机’,’轮船’) 字符串比较的规律: 字符串比较首先比较第一个字母,如果有结果那就不用在进行比较了。如果相等在进行第二个字母的比较,以次类推。
字符函数 1.求字符串长度函数 格式:LEN() 功能:返回制定字符表达式的长度,即所包含的字符个数。函数值为数值型 例如:X=“中文Visual FoxPro6.0” 则LEN(X)=20 2.大小写转换函数 格式:LOWER() UPPER() 功能:LOWER将制定表达式值中的大写字母转换成小写字母,其他字符不变 UPPER将指定表达式值中的小写字母转换成大写字母,其他字符不变。 例如:LOWER(‘X1y2A’)=x1y2a UPPER(‘n=1’)=N=1 3.空格字符串生成函数 格式:SPACE() 功能:返回指定数目的空格组成的字符串。 4.删除前后空格函数 格式:TRIM() LTRIM() ALLTRIM() 功能:TRIM():返回指定字符表达式值去掉尾部空格后形成的字符串 LTRIM():返回指定字符表达式值去掉前导空格后形成的字符串 ALLTRIM():返回指定字符表达式值去掉前导空格和尾部空格后形成的字符串。 例如:STORE SPACE(1)+”TEST”+SPACE(3) TO SS ?TRIM(SS)+LTRIM(SS)+ALLTRIM(SS) LEN(SS)=8,LEN(TRIM(SS))=5,LEN(LTRIM(SS))=7,LEN(ALLTRIM(SS))=4 5.取子串函数 格式:LEFT(,) RIGHT(,) SUBSTR(,,) 功能:LEFT(): 从指定表达式值的左端取一个指定长度的子串作为函数值。 RIGHT():从指定表达式值的右端取一个指定长度的子串作为函数值。 SUBSTR():从指定表达式值的起始位置取指定长度的子串作为函数值。 例如:STORE “GOOD BYE!” TO X LEFT(X,2)=GO,SUBSTR(X,6,2)+SUBSTR(X,6)=BYBYE!,RIGHT(X,3)=YE! 6.计算子串出现次数函数 格式:OCCURS(,) 功能:返回第一个字符串在第二个字符串中出现的次数。 例如:STORE ‘abracadabra’ TO S OCCURS(‘a’,S)=5, OCCURS(‘b’,S)=2, OCCURS(‘c’,S)=1, OCCURS(‘e’,S)=0 7.求子串位置函数 格式:AT(,,) ATC(,,) 功能:验证表达式1是否是表达式2的子串,如果是,返回表达式1的首字符在表达式2中的位置,若不是,则为0
ATC()与AT()的功能类似,但比较时不区分大小写 例如: STORE”This is Visual FoxPro” TO X AT(“fox”,X)=0,ATC(“fox”,X)=16,AT(“is”,X,3)=10,AT(“xo”,X) 8.子串替换函数 格式:STUFF( ,,,) 功能:用的值替换中由和指明的一个子串。
例如:STORE ‘GOOD BYE!’ TO S1 STORE ‘MORNING’ TO S2 ?STUFF(S1,6,3,S2)=GOOD MORNING! ?STUFF(S1,1,4,S2)=MORNING BYE! 9.字符替换函数 格式:CHRTRAN(,,) 功能:当第一个字符中的一个或多个字符与第二个字符串中的某个字符相匹配时,就用第三个字符中的对应字符(相同位置)替换这些字符。如果第三个字符串包含的字符个数少于第二个字符串包含的字符个数,因而没有对应字符,那么第一个字符串中相匹配的各字符将会被铲除。如果第三个字符串包含的字符个数多于第二个字符串包含的字符个数,多于字符被删掉。
例如:CHRTRAN(“ABACAD”,”ACD”,”X12”)=XBX1X2 CHRTRAN(“计算机ABC”,”计算机”,”电脑”)=电脑ABC CHRTRAN(“大家好!”,”大家”,”您”)=您好! 总结:第二个表达式没有的照写,第三个表达式没有的去掉。 10.字符串匹配函数 格式:LIKE(,) 功能:比较两个字符串对应位置上的字符,若所有对应字符相匹配,函数返回逻辑真(.T.)否则返回逻辑假(.F.)
中可以包含通配符*和?。*可与任何数目的字符相匹配,?可以与任何单个字符相匹配。
例如: STORE “abc” to x STORE “abcd” to y LIKE(“ab*”,x)=.T. LIKE(“ab*”,y)=.T. LIKE (x,y)=.F. LIKE(“?b?”,x)=.T. LIKE(“ABc”,x)=.F . 日期和时间函数 1.系统日期和时间函数: 格式:DATE():返回当前系统日期,函数值为日期型 TIME():以24小时制 、HH:MM:SS格式返回当前系统时间(字符型) DATETIME():返回当前系统日期时间,函数值为日期时间型 2.求年份、月份、天数函数 格式:YEAR(|) MONTH(|) DAY(|) 3.时、分和秒函数 格式:HOUR() MINUTE() SEC() 数据类型转换函数 1.数值转换成字符串 格式:STR(,,) 例如:STORE –123.456 TO N STR(N,9,2)=-123.46,STR(N,6,2)=-123.5 STR(N,3)=***,STR(N,6)=-123,STR(N)=-123 2.字符串转换成字符 格式:VAL() 例如:STORE ‘-123.’ TO X,STORT ‘45’ TO Y STORE ’A45’ TO Z 0VAL(X+Y)=123.45,VAL(X+Z)=123.00,VAL(Z+Y)=0.00 3.字符串转换成日期或日期时间 格式:CTOD()转化成日期型数据 CTOT()转化成日期时间型数据 4.日期或日期时间转化成字符串 格式:DTOC(|[,1]) TTOC( [,1]) 功能TOC()将日期型数据或日期时间数据的日期部分转化成字符串 TTOC()将日期时间数据转化成字符串 声明:对DTOC()来说,如果选项是1,则字符串的格式总是YYYYMMDD,8个字符。 对TTOC()来说,如果使用选项1,则字符串格式总是YYYYMMDDHHMMSS,14个字符
例如: STORE DATETIME() TO T DTOC(T)=11/11/2005, DTOC(T,1)=20051111, TTOC(T)=11/11/2005 18:54:34 PM TTOC (T,1)=20051111185434 5宏替换函数 格式 :&[.] 功能:替换出字符变量的内容,即去掉定界符。 例如:kk=“456”, ?&kk*100=45600 测试函数 1.值域测试函数