VF6.0常用函数
- 格式:doc
- 大小:51.00 KB
- 文档页数:6
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)联机状态。
VF6.0常用函数函数在程序中能进行数据运算或类型转换的作用,在程序中起到一定的作用。
下面我就一些常用的函数进行一下归类讲解。
(1)数值函数:运算结果为数值类型。
常见的有abs 绝对值函数sqrt 平方根函数int 取整函数,只取整数位舍去小数位ceiling 返回大于或等于指定数值表达式的最小整数floor 返回小于或等于指定数值表达式的最大整数round 四舍五入函数,返回指定数值表达式在指定位置四舍五入后的结果mod 返回两个数值表达式相除后的余数,余数的正负号与除数一致max 计算各表达式中的值,返回最大值min 计算各表达式中的值,返回最小值(2)字符函数:运算结果为字符类型。
常见的有len 返回指定字符表达式值的长度,以字节为单位,一个西文字符或空格占一个字符,一个中文字符占两个字符函数值为数值型lower,upper 分别将指定的字符表达式转换成大写和小写字母,其它字符不变space 返回由指定数目的空格组成的字符串trim,ltrim,alltrim返回指定字符表达式去掉尾部、首部、首尾部空格形成的字符串left,right 分别从指定表达式值的左端、右端取一个指定长度的子串作为函数值substr 从指定表达式值的指定位置取指定长度的子串作为函数at,atc 如果前字符串是后字符串的子串,测试前字符串首字符在后字符串中第几次出现的位置,函数值为数值型,atc在测试中不区分字母大小写stuff 从前字符串指定位置开始指定长度的字符用后字符串替换like 比较前后两个字符串对应位置上的字符,若所有对应字符都相匹配,函数返回值为逻辑真,否则为逻辑假,前字符串可包含通配符(3)日期和时间函数date 返回当前系统日期,函数值为日期型time 以24小时制、hh:mm:ss格式返回当前系统时间,函数值为字符型datetime 返回当前系统日期时间,函数值为日期时间型year,month,day 分别从指定的日期或日期时间表达式中返回年份、月份、天数hour,minute,sec分别从指定的日期时间表达式中返回小时、分钟、秒数部分(4)类型转换函数str 数值转换成字符串val 字符串转换成数值ctod 字符转换成日期dtoc 日期转换成字符& 替换出字符型变量的内容(5)测试函数:函数值为逻辑型between 判断一个表达式的值是否介于另外两个表达式的值之间isnull 判断一个表达式的值是否为空值empty 判断指定的表达式的运算结果是否是空值eofbof 测试指定的表文件中的记录指针是否处于尾标和首标recno 测试指定的表文件中的当前记录的记录号reccount 测试指定的表文件中的记录个数iif 测试逻辑表达式的值,若为逻辑真,函数返回前表达式的值,否则返回后表达式的值deleted 测试指定的表文件中的当前记录是否有删除标记第二种总结方式:数值函数:1.绝对值和符号函数格式:ABS(<数值表达式>)SIGN(<数值表达式>)例如:ABS(-5)=5,ABS(4)=4,SIGN(8)=1,SIGN(-3)=-1,SIGN(0)=02.求平方根表达式格式:SQRT(<数值表达式>)例如:SQRT(16)=4,它与开二分之一次方等同。
一.数值函数:1、绝对值函数 ABS(数值表达式)返回数值表达式的绝对值,返回数据类型:数值型;2、取整函数 INT(数值表达式)返回数值表达式的整数部分,返回数据类型:数值型;3、符号函数 SIGN(数值表达式)测试表达式的值,若为正数,返回1,若为负数,返回-1,若为0,返回0,返回数据类型:数值型;4、取最小整数函数CEILING(数值表达式)返回大于或等于表达式的值的最小整数,返回数据类型:数值型;5、取最大整数函数FLOOR(数值表达式)返回小于或等于表达式的值的最小整数,返回数据类型:数值型;6、四舍五入函数 ROUND(数值表达式,有效位数)对数值表达式按照有效位数进行四舍五入,返回数据类型:数值型;7、求余函数 MOD(数值表达式1,数值表达式2)返回表达式1除以表达式2的余数,同号直接求余,若异号,求余后加上表达式2的值,返回数据类型:数值型8、平方根函数 SQRT(数值表达式)返回数值表达式的平方根,返回数据类型:数值型9、自然对数函数LOG(数值表达式)返回数值表达式的自然对数,返回数据类型:数值型10、圆周率函数 PI( )返回圆周率的值,返回数据类型:数值型二、日期和时间函数1、日期函数 DATE()返回当前系统日期,返回默认格式“mm/dd/yy”,返回的数据类型:日期型;2、求年份函数 YEAR(日期表达式|日期时间表达式)返回指定日期的年份,返回的数据类型:数值;3、求月份函数 MONTH(日期表达式|日期时间表达式)返回指定日期的月份,返回的数据类型:数值;4、求日函数 DAY(日期表达式|日期时间表达式)返回指定日期的日的数值,返回的数据类型:数值;5、系统时间函数 TIME()返回当前系统时间,返回的默认格式“hh:mm:ss”,返回数据类型:字符型;6、系统日期时间函数 DATETIME()返回当前系统日期和时间,返回的数据类型日期时间型三、字符函数1、生成空格函数 SPACE(数值表达式)返回一个空格组成的字符串,空格的个数有数值表达式来决定 ,返回数据类型:字符型2、删除前导空格函数LTRIM(字符表达式)返回指定字符串删除前导空格后的字符串,返回数据类型:字符型。
(3)[转载]VFP6.0常用函数VFP6.0常用函数函数是用程序来实现的一种数据运算或转换。
每一个函数都有特定的数据运算或转换功能,它往往需要若干个自变量,即运算对象,但只能有一个运算结果,称为函数值或返回值。
函数可以用函数名和一对圆括号加以调用,自变量放在圆括号里,如LEN(x)。
函数调用可以出现在表达式里,表达式将函数的返回值作为自己运算的对象。
函数调用也可作为一条命令使用,但此时系统忽略函数的返回值。
本章将常用函数分为数值函数、字符处理函数、日期类函数、数据类型转换函数、测试函数5类,通过举例分别介绍。
1.数值函数数值函数是指函数值为数值的一类函数,它们的自变量和返回值往往都是数值型数据。
1.绝对值函数格式:ABS(〈数值表达式〉)功能:返回指定的数值表达式的绝对值。
例如:ABS(10),ABS(-5)10 52.符号函数格式:SIGN(〈数值表达式〉)功能:返回指定数值表达式的符号。
当表达式的运算结果为正、负和零时,函数值分别为1、-1和0。
例如:SIGN(-10),SIGN(0),SIGN(5)-1 0 13.求平方根函数格式:SQRT(〈数值表达式〉)功能:返回指定表达式的平方根。
自变量表达式的值不能为负。
例如:SQRT(4)24.圆周率函数格式:PI()功能:返回圆周率π(数值型)。
该函数没有自变量。
5.求整数函数格式:INT(〈数值表达式〉)CEILING(〈数值表达式〉)FLOOR(〈数值表达式〉)功能:INT()返回指定数值表达式的整数部分。
CEILING()返回大于或等于指定数值表达式的最小整数。
FLOOR()返回小于或等于指定数值表达式的最大整数。
例如:X=5.8INT(X);INT(-X);CEILING(X);CEILING(-X);FLOOR(X);FLOOR(-X)5 -56 -5 5 -66.四舍五入函数格式:ROUND(〈数值表达式1〉,〈数值表达式2〉)功能:返回指定表达式在指定位置四舍五入后的结果。
VFP命令、函数及程序语句大全(1学过VFP(Microsoft Visual FoxPro的朋友都知道它是微软公司开发的数据库管理系统。
它经历了从dBASE、FoxBASE、FoxPro直到VFP的发展过程。
本文便以VFP 6.0为例介绍它的命令、函数及程序语句,为学习VFP的朋友提供必要的学习参考,也为已经精通VFP的朋友提供复习的好机会。
一、主要命令:1、CREATE作用:建立一个新的表。
格式:CREATE [<文件>|?](注意,命令字符可取前面四个字符,后面可省略不写,即CREA,下同;中括号表示其中的参数是可选的;|管道符号表示两个参数只能选择一个,不能同时选择,下同。
说明:文件指建立以.dbf为扩展名的VFP数据库文件,在命令后面加上一个问号表示系统会弹出对话框,要求用户输入想要建立的表名。
在命令中不加文件名或问号系统也会弹出对话框,要求用户输入想要建立的表名。
2、MODIFY STRUCTURE作用:显示表文件结构,并允许修改此表的结构。
格式:MODIFY STRUCTURE说明:只有在用USE命令打开表文件以后,才能显示或修改表文件的结构。
3、APPEND作用:在当前表的尾部(无论表中有无记录追加记录(在当前表指当前正使用的表。
格式:APPEND [BLANK]说明:在APPEND命令后面加上BLANK参数表示在当前表的尾部添加一条空白记录。
无BLANK 参数时,表示在当前表的尾部添加一条记录并要求用户输入相应的字段内容。
4、INSERT作用:在表文件中间插入一个新记录。
格式:INSERT [BEFORE] [BLANK]说明:INSERT 在当前记录后插入一记录;INSERT BEFORE 在当前记录前插入一记录;INSERT BEFORE BLANK 在当前记录前插入一空记录。
INSERT - SQL命令追加记录INSERT INTO 表名[(字段1[,字段2…]];VALUES(表达式1[,表达式2…]例:INSERT INTO XS(XH,XM,XB,XIMINGVALUES(“950106”,“高山”,“男”,“”5、UPDATE作用:修改数据update <表名> set <字段1=表达式1>,<字段2=表达式2...> where <条件>例: update <表名> set <字段1,字段2...>=<表达式1,表达式2...> where <条件>6、BROWSE作用:主要用于打开浏览窗口,查阅表文件并同时进行修改。
VFP常用编程命令及常用函数VFP常用编程命令及常用函数常用编程命令及常用函数注:在语法中如用方括号“[]”括起来的词句,表示可以不用。
常用命令假设(if...endif) 循环(dowhile...enddo)分支(docase...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,则让等级字段的值为“优”,并显示该记录。
一、函数的定义:函数是一种自带程序的模块,我们只需调用即可,一般用于辅助计算。
其格式:函数名(<参数>)。
运算时不能直接写在命令窗口,必须以“?”开始。
二、函数类型:根据类型不同可为五种:数值函数、字符函数、日期函数、类型转换函数、测试函数。
1、数值函数:⑴取整函数int()?int(12.5689) 运算结果为:12?int(-100.23) 运算结果为:-100⑵求绝对值函数abs()?abs(-125) 运算结果为:125?abs(200) 运算结果为:200⑶圆周率函数pi()?pi() 运算结果为:3.14⑷求平方根函数sqrt()?sqrt(100) 运算结果为:10⑸四舍五入函数round()?round(123.567,2) 运算结果为:123.57(保留两位小数)?round(123.567,-1) 运算结果为:120(表示在小数点左边截取1位)?round(123.567,-3) 运算结果为:0?round(532.567,-3) 运算结果为:1000⑹对数函数log()?log(100) 运算结果为:4.61⑺常用对数函数log10()?log10(100) 运算结果为:2.00⑻指数函数exp()?exp(120) 运算结果为:1.304180E+52⑼最大值函数max()?max(1,2,3,10) 运算结果为:10⑽最小值函数min()?min(2,10,3,-1) 运算结果为:-1⑾符号函数sign()?sign(100) 运算结果为:1 (表示正数)?sign(-200) 运算结果为:-1(表示负数)?sign(0) 运算结果为:0 (表示0)2、字符函数⑴求字符串长度函数len()?len(”abcd”) 运算结果为:4?len(”计算机AB”) 运算结果为:8(一个汉字占两个字节)⑵删除左空格函数ltrim()?ltrim(” abcd ”) 运算结果为:abcd (左无空格,右有两个空格)⑶删除右空格函数ltrim()或trim()?ltrim(” abcd ”) 运算结果为:abcd (左有两个空格,右无空格)⑷左右都删除空格函数alltrim()?ltrim(” abcd ”) 运算结果为:abcd (左右都无空格)⑸生成空格函数space()?’ab’+space(4)+’cd’ 运算结果为:ab cd(中间有四个空格)⑹生成重复字符函数replicate()?replicate(”*”,10) 运算结果为:**********⑺截取子串函数substr()?substr(”abcdefg”,2,3) 运算结果为:bcd(“2”截取的位置,”3”截取的总字节数)⑻截取左子串函数left()?left(”abcdefg”,4) 运算结果为:abcd(“4”表示截取的总字节数。
一、函数的定义:函数是一种自带程序的模块,我们只需调用即可,一般用于辅助计算。
其格式:函数名(<参数>)。
运算时不能直接写在命令窗口,必须以“?”开始。
二、函数类型:根据类型不同可为五种:数值函数、字符函数、日期函数、类型转换函数、测试函数。
1、数值函数:⑴取整函数int()?int(12.5689) 运算结果为:12?int(-100.23) 运算结果为:-100⑵求绝对值函数abs()?abs(-125) 运算结果为:125?abs(200) 运算结果为:200⑶圆周率函数pi()?pi() 运算结果为:3.14⑷求平方根函数sqrt()?sqrt(100) 运算结果为:10⑸四舍五入函数round()?round(123.567,2) 运算结果为:123.57(保留两位小数)?round(123.567,-1) 运算结果为:120(表示在小数点左边截取1位)?round(123.567,-3) 运算结果为:0?round(532.567,-3) 运算结果为:1000⑹对数函数log()?log(100) 运算结果为:4.61⑺常用对数函数log10()?log10(100) 运算结果为:2.00⑻指数函数exp()?exp(120) 运算结果为:1.304180E+52⑼最大值函数max()?max(1,2,3,10) 运算结果为:10⑽最小值函数min()?min(2,10,3,-1) 运算结果为:-1⑾符号函数sign()?sign(100) 运算结果为:1 (表示正数)?sign(-200) 运算结果为:-1(表示负数)?sign(0) 运算结果为:0 (表示0)2、字符函数⑴求字符串长度函数len()?len(”abcd”) 运算结果为:4?len(”计算机AB”) 运算结果为:8(一个汉字占两个字节)⑵删除左空格函数ltrim()?ltrim(” abcd ”) 运算结果为:abcd (左无空格,右有两个空格)⑶删除右空格函数ltrim()或trim()?ltrim(” abcd ”) 运算结果为:abcd (左有两个空格,右无空格)⑷左右都删除空格函数alltrim()?ltrim(” abcd ”) 运算结果为:abcd (左右都无空格)⑸生成空格函数space()?’ab’+space(4)+’cd’ 运算结果为:ab cd(中间有四个空格)⑹生成重复字符函数replicate()?replicate(”*”,10) 运算结果为:**********⑺截取子串函数substr()?substr(”abcdefg”,2,3) 运算结果为:bcd(“2”截取的位置,”3”截取的总字节数)⑻截取左子串函数left()?left(”abcdefg”,4) 运算结果为:abcd(“4”表示截取的总字节数。
函数:一、数值和数学函数1、一般数值函数(1)取整函数格式:INT(<数值表达式>)功能:该函数返回<数值表达式>的整数部分(2)向上取整函数格式:CEILING(<数值表达式>)功能:该函数返回不小于<数值表达式>的最小整数(3)向下取整函数格式:FLOOR(<数值表达式>)功能:该函数返回不大于<数值表达式>的最大整数(4)四舍五入函数格式:ROUND(<数值表达式1>,<数值表达式2>)功能:该函数根据要求保留小数位。
具体操作是:根据<数值表达式2>指定的位数,对<数值表达式1>进行四舍五入操作,最后保留相应的小数位数。
若<数值表达式2>指定的位数为负数,则表示整数部分舍至第几位,得到的值将尾随<数值表达式2>个零。
(5)取模函数格式:MOD(<数值表达式1>,<数值表达式2>)功能:该函数返回<数值表达式1>除以<数值表达式2>的余数,如<数值表达式2>为正,则函数值为正,否则为负。
表达式自动取整再进行取模运算。
(6)最大/最小值函数格式:MAX/MIN(<表达式1>,<表达式2>[<表达式3>...])功能:该函数返回若干个表达式中的最大或最小数。
(7)绝对值函数格式:ABS(<数值表达式>)功能:该函数返回<数值表达式>的绝对值(8)平方根函数格式:SQRT(<数值表达式>)功能:该函数返回<数值表达式>的算术平方根(9)指数函数格式:EXP(<数值表达式>)功能:该函数返回以E为底的指数值,<数值表达式>为e的指数部分。
(10)符号函数格式:SIGN(<数值表达式>)功能:该函数根据<数值表达式>的值为正、零、负数分别返回1、0、-1。
函数在程序中能进行数据运算或类型转换的作用,在程序中起到一定的作用。
下面我就一些常用的函数进行一下归类讲解。
(1)数值函数:运算结果为数值类型。
常见的有abs 绝对值函数sqrt 平方根函数int 取整函数,只取整数位舍去小数位ceiling 返回大于或等于指定数值表达式的最小整数floor 返回小于或等于指定数值表达式的最大整数round 四舍五入函数,返回指定数值表达式在指定位置四舍五入后的结果mod 返回两个数值表达式相除后的余数,余数的正负号与除数一致max 计算各表达式中的值,返回最大值min 计算各表达式中的值,返回最小值(2)字符函数:运算结果为字符类型。
常见的有len 返回指定字符表达式值的长度,以字节为单位,一个西文字符或空格占一个字符,一个中文字符占两个字符函数值为数值型lower,upper 分别将指定的字符表达式转换成大写和小写字母,其它字符不变space 返回由指定数目的空格组成的字符串trim,ltrim,alltrim返回指定字符表达式去掉尾部、首部、首尾部空格形成的字符串left,right 分别从指定表达式值的左端、右端取一个指定长度的子串作为函数值substr 从指定表达式值的指定位置取指定长度的子串作为函数 at,atc 如果前字符串是后字符串的子串,测试前字符串首字符在后字符串中第几次出现的位置,函数值为数值型,atc在测试中不区分字母大小写stuff 从前字符串指定位置开始指定长度的字符用后字符串替换like 比较前后两个字符串对应位置上的字符,若所有对应字符都相匹配,函数返回值为逻辑真,否则为逻辑假,前字符串可包含通配符(3)日期和时间函数date 返回当前系统日期,函数值为日期型time 以24小时制、hh:mm:ss格式返回当前系统时间,函数值为字符型datetime 返回当前系统日期时间,函数值为日期时间型year,month,day 分别从指定的日期或日期时间表达式中返回年份、月份、天数hour,minute,sec分别从指定的日期时间表达式中返回小时、分钟、秒数部分(4)类型转换函数str 数值转换成字符串val 字符串转换成数值ctod 字符转换成日期dtoc 日期转换成字符& 替换出字符型变量的内容(5)测试函数:函数值为逻辑型between 判断一个表达式的值是否介于另外两个表达式的值之间isnull 判断一个表达式的值是否为空值empty 判断指定的表达式的运算结果是否是空值eofbof 测试指定的表文件中的记录指针是否处于尾标和首标recno 测试指定的表文件中的当前记录的记录号reccount 测试指定的表文件中的记录个数iif 测试逻辑表达式的值,若为逻辑真,函数返回前表达式的值,否则返回后表达式的值deleted 测试指定的表文件中的当前记录是否有删除标记第二种总结方式:数值函数: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,R OUND(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(‘汽车’,’飞机’,’轮船’)字符串比较的规律:字符串比较首先比较第一个字母,如果有结果那就不用在进行比较了。
如果相等在进行第二个字母的比较,以次类推。
字符函数1.求字符串长度函数格式:LEN(<字符表达式>)功能:返回制定字符表达式的长度,即所包含的字符个数。
函数值为数值型例如:X=“中文Visual FoxPro6.0”则LEN(X)=202.大小写转换函数格式:LOWER(<字符表达式>)UPPER(<字符表达式>)功能:LOWER将制定表达式值中的大写字母转换成小写字母,其他字符不变UPPER将指定表达式值中的小写字母转换成大写字母,其他字符不变。
例如:LOWER(‘X1y2A’)=x1y2a UPPER(‘n=1’)=N=13.空格字符串生成函数格式: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(S S))=45.取子串函数格式:LEFT(<字符表达式>,<长度>)RIGHT(<字符表达式>,<长度>)SUBSTR(<字符表达式>,<起始位置>,<长度>)功能:LEFT(): 从指定表达式值的左端取一个指定长度的子串作为函数值。
RIGHT():从指定表达式值的右端取一个指定长度的子串作为函数值。
SUBSTR():从指定表达式值的起始位置取指定长度的子串作为函数值。
例如:STORE “GOOD BYE!” TO XLEFT(X,2)=GO,SUBSTR(X,6,2) SUBSTR(X,6)=BYBYE!,RIGHT(X,3)=YE!6.计算子串出现次数函数格式:OCCURS(<字符表达式1>,<字符表达式2>)功能:返回第一个字符串在第二个字符串中出现的次数。
例如:STORE ‘abracadabra’ TO SOCCURS(‘a’,S)=5, OCCURS(‘b’,S)=2, OCCURS(‘c’,S)=1, OCCURS(‘e’, S)=07.求子串位置函数格式:AT(<字符表达式1>,<字符表达式2>,<数值表达式>)ATC(<字符表达式1>,<字符表达式2>,<数值表达式>)功能:验证表达式1是否是表达式2的子串,如果是,返回表达式1的首字符在表达式2中的位置,若不是,则为0ATC()与AT()的功能类似,但比较时不区分大小写例如: STORE”This is Visual FoxPro” TO XAT(“fox”,X)=0,ATC(“fox”,X)=16,AT(“is”,X,3)=10,AT(“xo”,X) 8.子串替换函数格式:STUFF( <字符表达式1>,<起始位置>,<长度>,<字符表达式2>)功能:用<字符表达式2>的值替换<字符表达式1>中由<起始位置>和<长度>指明的一个子串。
例如:STORE ‘GOOD BYE!’ TO S1STORE ‘MORNING’ TO S2?STUFF(S1,6,3,S2)=GOOD MORNING!?STUFF(S1,1,4,S2)=MORNING BYE!9.字符替换函数格式:CHRTRAN(<字符表达式1>,<字符表达式2>,<字符表达式3>)功能:当第一个字符中的一个或多个字符与第二个字符串中的某个字符相匹配时,就用第三个字符中的对应字符(相同位置)替换这些字符。
如果第三个字符串包含的字符个数少于第二个字符串包含的字符个数,因而没有对应字符,那么第一个字符串中相匹配的各字符将会被铲除。
如果第三个字符串包含的字符个数多于第二个字符串包含的字符个数,多于字符被删掉。
例如:CHRTRAN(“ABACAD”,”ACD”,”X12”)=XBX1X2CHRTRAN(“计算机ABC”,”计算机”,”电脑”)=电脑ABCCHRTRAN(“大家好!”,”大家”,”您”)=您好!总结:第二个表达式没有的照写,第三个表达式没有的去掉。
10.字符串匹配函数格式:LIKE(<字符表达式1>,<字符表达式2>)功能:比较两个字符串对应位置上的字符,若所有对应字符相匹配,函数返回逻辑真(.T.)否则返回逻辑假(.F.)<字符表达式1>中可以包含通配符*和?。
*可与任何数目的字符相匹配,?可以与任何单个字符相匹配。
例如:STORE “abc” to xSTORE “abcd” to yLIKE(“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 NSTR(N,9,2)=-123.46,STR(N,6,2)=-123.5STR(N,3)=***,STR(N,6)=-123,STR(N)=-1232.字符串转换成字符格式:VAL(<字符表达式>)例如:STORE ‘-123.’ TO X,STORT ‘45’ TO YSTORE ’A45’ TO ZVAL(X Y)=123.45,VAL(X Z)=123.00,VAL(Z Y)=0.003.字符串转换成日期或日期时间格式:CTOD(<字符表达式>)转化成日期型数据CTOT(<字符表达式>)转化成日期时间型数据4.日期或日期时间转化成字符串格式:DTOC(<日期表达式>|<日期时间表达式>[,1])TTOC(<日期时间表达式> [,1])功能TOC()将日期型数据或日期时间数据的日期部分转化成字符串TTOC()将日期时间数据转化成字符串声明:对DTOC()来说,如果选项是1,则字符串的格式总是YYYYMMDD,8个字符。