




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第第 2章章 Visual FoxPro 程序設(shè)計(jì)基礎(chǔ)程序設(shè)計(jì)基礎(chǔ) 本章重點(diǎn):本章重點(diǎn): 1、掌握不同類型數(shù)據(jù)的正確表達(dá)形式。、掌握不同類型數(shù)據(jù)的正確表達(dá)形式。 2、掌握運(yùn)算符的運(yùn)算規(guī)則、優(yōu)先級(jí)、結(jié)合性、掌握運(yùn)算符的運(yùn)算規(guī)則、優(yōu)先級(jí)、結(jié)合性; 3、掌握程序設(shè)計(jì)的三種基本結(jié)構(gòu),會(huì)編寫簡(jiǎn)單、掌握程序設(shè)計(jì)的三種基本結(jié)構(gòu),會(huì)編寫簡(jiǎn)單的程序。的程序。第第 2章章 Visual FoxPro 程序設(shè)計(jì)基礎(chǔ)程序設(shè)計(jì)基礎(chǔ) 2.1 常量與變量常量與變量 2.2 表達(dá)式表達(dá)式 2.3 常用函數(shù)常用函數(shù) 2.4 程序與程序文件程序與程序文件 2.5 程序的基本結(jié)構(gòu)程序的基本結(jié)構(gòu) 2.6 多模塊程序設(shè)計(jì)多模塊程序設(shè)計(jì)
2、2.1 常量與變量常量與變量 2.1.1 數(shù)據(jù)類型數(shù)據(jù)類型 1.定義定義 指數(shù)據(jù)對(duì)象取值和運(yùn)算的集合指數(shù)據(jù)對(duì)象取值和運(yùn)算的集合; 數(shù)據(jù)類型一旦被定義,就確定了其存儲(chǔ)方式和數(shù)據(jù)類型一旦被定義,就確定了其存儲(chǔ)方式和使用方式使用方式; 2.類型類型 數(shù)值型和非數(shù)值型數(shù)值型和非數(shù)值型 3.數(shù)據(jù)基本類型數(shù)據(jù)基本類型 表創(chuàng)建時(shí)必須指明數(shù)據(jù)類型,不能改變;表創(chuàng)建時(shí)必須指明數(shù)據(jù)類型,不能改變; 變量和數(shù)組由存入其中的值決定;變量和數(shù)組由存入其中的值決定; 一、一、 字符型字符型(C:Character) 不具有計(jì)算能力的文字?jǐn)?shù)據(jù)類型。不具有計(jì)算能力的文字?jǐn)?shù)據(jù)類型。 由任意字符組成:由任意字符組成: 如漢字和如
3、漢字和ASCII字符集中可打印字符字符集中可打印字符(字母字符、數(shù)字字母字符、數(shù)字字符、空格、符號(hào)等字符、空格、符號(hào)等)組成,長(zhǎng)度范圍是組成,長(zhǎng)度范圍是0254個(gè)字個(gè)字符符 必須用定界符雙引號(hào)必須用定界符雙引號(hào)(“”)或單引號(hào)或單引號(hào)( )、 括起括起來(lái)。來(lái)。 注意注意: 必須用西文方式的單或雙引號(hào)括起。必須用西文方式的單或雙引號(hào)括起。 學(xué)號(hào)、工號(hào)、電話號(hào)碼、郵政編碼學(xué)號(hào)、工號(hào)、電話號(hào)碼、郵政編碼(看上去象數(shù)值型看上去象數(shù)值型)一般用字符型表示。一般用字符型表示。 二、二、 數(shù)值型數(shù)值型(N:Numeric) 數(shù)值型用來(lái)表示數(shù)量數(shù)值型用來(lái)表示數(shù)量. 分為以下四種類型:分為以下四種類型: (1)
4、基本數(shù)值型(基本數(shù)值型(Numeric) 由數(shù)字(由數(shù)字(09)、小數(shù)點(diǎn)和正負(fù)號(hào)組成。最大長(zhǎng)度為)、小數(shù)點(diǎn)和正負(fù)號(hào)組成。最大長(zhǎng)度為20位(包括位(包括、和小數(shù)點(diǎn))。、和小數(shù)點(diǎn))。 指數(shù)形式:例如:指數(shù)形式:例如: 123400000可以表示為:可以表示為:1.234E+8, 0.0002356可以表示為:可以表示為:2.356E-4 (2)浮點(diǎn)型浮點(diǎn)型* (F:Float) 與數(shù)值型數(shù)據(jù)完全等價(jià)與數(shù)值型數(shù)據(jù)完全等價(jià),只是在存儲(chǔ)形式上采取浮點(diǎn)格式。只是在存儲(chǔ)形式上采取浮點(diǎn)格式。 (3)雙精度型雙精度型* (B:Double) 是更高精度的數(shù)值型數(shù)據(jù),位數(shù)固定。只用于數(shù)據(jù)表中的字段數(shù)是更高精度的數(shù)
5、值型數(shù)據(jù),位數(shù)固定。只用于數(shù)據(jù)表中的字段數(shù)據(jù)類型的定義,并采用固定長(zhǎng)度浮點(diǎn)格式存儲(chǔ)。據(jù)類型的定義,并采用固定長(zhǎng)度浮點(diǎn)格式存儲(chǔ)。 (4)整型整型* (I:Integer) 是不包含小數(shù)點(diǎn)部分的數(shù)值型數(shù)據(jù)。它只用于數(shù)據(jù)表中的字段類是不包含小數(shù)點(diǎn)部分的數(shù)值型數(shù)據(jù)。它只用于數(shù)據(jù)表中的字段類型的定義。整型數(shù)據(jù)以二進(jìn)制形式存儲(chǔ),大小占型的定義。整型數(shù)據(jù)以二進(jìn)制形式存儲(chǔ),大小占4個(gè)字節(jié)。個(gè)字節(jié)。 三、貨幣型三、貨幣型(Y:Currency) 描述貨幣數(shù)據(jù)(小數(shù)位數(shù)超過(guò)描述貨幣數(shù)據(jù)(小數(shù)位數(shù)超過(guò)4位四舍五入)位四舍五入) cPrice=$100.356 四、日期型四、日期型(Date) 用于表示有關(guān)日期的數(shù)據(jù)
6、:用于表示有關(guān)日期的數(shù)據(jù): birthday=1968/05/20 日期型數(shù)據(jù)以日期型數(shù)據(jù)以yyyymmdd樣式保存樣式保存,8字節(jié)字節(jié) (1)嚴(yán)格的日期格式)嚴(yán)格的日期格式 格式:格式:yyyy/mm/dd 注:花括號(hào)內(nèi)第一字符必須是脫字符注:花括號(hào)內(nèi)第一字符必須是脫字符“”; 年份必須使用年份必須使用4位;位; 年月日順序不能顛倒。年月日順序不能顛倒。 例:例:2009-09-15 (2)傳統(tǒng)日期格式)傳統(tǒng)日期格式 只能在只能在set strictdate to 0狀態(tài)下使用。狀態(tài)下使用。 系統(tǒng)默認(rèn)美國(guó)日期格式系統(tǒng)默認(rèn)美國(guó)日期格式mm/dd/yy年份可以是年份可以是2位也位也可以是可以是4
7、位。年月日的次序可以任意。受系統(tǒng)設(shè)置影位。年月日的次序可以任意。受系統(tǒng)設(shè)置影響,在不同狀態(tài)下,對(duì)日期的解釋不同。響,在不同狀態(tài)下,對(duì)日期的解釋不同。 例:例: 04/02/09 可以解釋為可以解釋為2009年年4月月2日日 也可以解釋為也可以解釋為2004年年2月月9日日 還可以解釋為還可以解釋為2009年年2月月4日日 (3)影響日期格式的設(shè)置命令)影響日期格式的設(shè)置命令 set mark to 日期分隔符日期分隔符 指定日期的顯示分隔符如指定日期的顯示分隔符如“-”、“.”。 注:若省略注:若省略日期分隔符日期分隔符,則用恢復(fù)系統(tǒng)默認(rèn)值,則用恢復(fù)系統(tǒng)默認(rèn)值“/”。 set date to
8、MDY|DMY|YMD 設(shè)置日期顯示的格式??捎玫娜掌诟袷饺缦拢涸O(shè)置日期顯示的格式??捎玫娜掌诟袷饺缦拢憾陶Z(yǔ)短語(yǔ)格式格式短語(yǔ)短語(yǔ)格式格式AMERICANmm/dd/yyANSIyy.mm.ddFRENCHdd/mm/yyGERMANdd.mm.yyITALIANdd-mm-yyJANPANyy/mm/ddUSAmm-dd-yy MDYmm/dd/yy DMYdd/mm/yy YMDyy/mm/dd 五、五、 日期時(shí)間型日期時(shí)間型(DateTime) 表述日期表述日期時(shí)間或二者兼而有之的數(shù)據(jù)時(shí)間或二者兼而有之的數(shù)據(jù) tdatetime=3/11/ 2005 10:30pm Tdateonly=3
9、/11/2005 Ttimeonly=10:30 am 日期時(shí)間型數(shù)據(jù)占日期時(shí)間型數(shù)據(jù)占8字節(jié),字節(jié),4個(gè)字節(jié)表示日期,個(gè)字節(jié)表示日期,另另4個(gè)字節(jié)表示時(shí)間個(gè)字節(jié)表示時(shí)間 日期時(shí)間型數(shù)據(jù)的缺省默認(rèn)值日期時(shí)間型數(shù)據(jù)的缺省默認(rèn)值: ?ctot(“03/05/2008”)、?ctot(2:40 am) 時(shí)間格式受時(shí)間格式受SET HOURS、SET SECONDS等命令的等命令的影響影響 六、六、 邏輯型邏輯型(Logical) 是描述客觀事物真假的數(shù)據(jù),用于表示邏輯判是描述客觀事物真假的數(shù)據(jù),用于表示邏輯判斷結(jié)果。斷結(jié)果。 只有真(只有真(.T.)和假()和假(.F.)兩種值,長(zhǎng)度固定為)兩種值,
10、長(zhǎng)度固定為1位字節(jié)。位字節(jié)。 如:是否必修課?如:是否必修課? 七、七、 備注型備注型*(Memo) 用于在表字段中存放較長(zhǎng)的字符型數(shù)據(jù)類型。用于在表字段中存放較長(zhǎng)的字符型數(shù)據(jù)類型。是字符型數(shù)據(jù)的特殊形式。是字符型數(shù)據(jù)的特殊形式。 沒(méi)有數(shù)據(jù)長(zhǎng)度限制,僅受限于現(xiàn)有的磁盤空間。沒(méi)有數(shù)據(jù)長(zhǎng)度限制,僅受限于現(xiàn)有的磁盤空間。 其字段長(zhǎng)度固定為其字段長(zhǎng)度固定為4位,用于存放引用信息,指位,用于存放引用信息,指向該字段的真正內(nèi)容。向該字段的真正內(nèi)容。 實(shí)際數(shù)據(jù)被存放在與數(shù)據(jù)表文件同名的備注文實(shí)際數(shù)據(jù)被存放在與數(shù)據(jù)表文件同名的備注文件中,長(zhǎng)度根據(jù)數(shù)據(jù)的內(nèi)容而定。件中,長(zhǎng)度根據(jù)數(shù)據(jù)的內(nèi)容而定。 八、八、 通用型
11、通用型*(General) 用于在表中存儲(chǔ)用于在表中存儲(chǔ)OLE(對(duì)象鏈接與嵌入對(duì)象鏈接與嵌入)對(duì)象對(duì)象 OLE對(duì)象可以是電子表格、文檔、圖片等。對(duì)象可以是電子表格、文檔、圖片等。 只用于數(shù)據(jù)表中的字段類型的定義。只用于數(shù)據(jù)表中的字段類型的定義。 OLE對(duì)象的實(shí)際內(nèi)容、類型和數(shù)據(jù)量則取決于連接或?qū)ο蟮膶?shí)際內(nèi)容、類型和數(shù)據(jù)量則取決于連接或嵌入嵌入OLE對(duì)象的操作方式。對(duì)象的操作方式。 連接連接OLE對(duì)象方式,數(shù)據(jù)表中只包含對(duì)對(duì)象方式,數(shù)據(jù)表中只包含對(duì)OLE對(duì)象的引用說(shuō)明,對(duì)象的引用說(shuō)明,以及對(duì)創(chuàng)建該以及對(duì)創(chuàng)建該OLE對(duì)象的應(yīng)用程序的引用說(shuō)明;對(duì)象的應(yīng)用程序的引用說(shuō)明; 嵌入嵌入OLE對(duì)象方式,數(shù)據(jù)
12、表中除包含對(duì)創(chuàng)建該對(duì)象方式,數(shù)據(jù)表中除包含對(duì)創(chuàng)建該OLE對(duì)象的應(yīng)用對(duì)象的應(yīng)用程序的引用說(shuō)明,還包含程序的引用說(shuō)明,還包含OLE對(duì)象中的實(shí)際數(shù)據(jù)。對(duì)象中的實(shí)際數(shù)據(jù)。 長(zhǎng)度固定為長(zhǎng)度固定為4位,用于存放引用信息,指向該字段的真位,用于存放引用信息,指向該字段的真正內(nèi)容。正內(nèi)容。 實(shí)際數(shù)據(jù)長(zhǎng)度僅受限于現(xiàn)有的磁盤空間。實(shí)際數(shù)據(jù)長(zhǎng)度僅受限于現(xiàn)有的磁盤空間。 2.2.1 存儲(chǔ)容器名稱命名規(guī)則存儲(chǔ)容器名稱命名規(guī)則 2.2.2 常量(常量(Constants) 2.2.3 內(nèi)存變量(內(nèi)存變量(Variables) 2.2.4 數(shù)組(數(shù)組(Arrays) 2.2.5 字段(字段(Fields) 2.2.6 對(duì)象
13、(對(duì)象(Objects)2.2 常量和變量常量和變量 VFP允許使用常量、變量、數(shù)組、字段和對(duì)象來(lái)允許使用常量、變量、數(shù)組、字段和對(duì)象來(lái)存儲(chǔ)數(shù)據(jù),它們也被稱為存儲(chǔ)數(shù)據(jù)的容器存儲(chǔ)數(shù)據(jù),它們也被稱為存儲(chǔ)數(shù)據(jù)的容器 1.名稱中只能包含字母、下劃線、數(shù)字符號(hào)和漢字符號(hào)名稱中只能包含字母、下劃線、數(shù)字符號(hào)和漢字符號(hào) 2.名稱的開(kāi)頭只能是字母、漢字、下劃線,不能是數(shù)字名稱的開(kāi)頭只能是字母、漢字、下劃線,不能是數(shù)字符號(hào)符號(hào) 注意:盡可能避免下劃線作為名稱開(kāi)頭注意:盡可能避免下劃線作為名稱開(kāi)頭 表的字段名不能用下劃線開(kāi)頭表的字段名不能用下劃線開(kāi)頭 3.名稱的長(zhǎng)度可以是名稱的長(zhǎng)度可以是1-128個(gè)字符長(zhǎng)度個(gè)字符
14、長(zhǎng)度 注意:自由表字段名、索引標(biāo)識(shí)名只能為注意:自由表字段名、索引標(biāo)識(shí)名只能為10個(gè)字符個(gè)字符 4.應(yīng)避免使用系統(tǒng)保留字應(yīng)避免使用系統(tǒng)保留字2.1.2存儲(chǔ)容器名稱命名規(guī)則存儲(chǔ)容器名稱命名規(guī)則 1. 數(shù)值型:數(shù)值型: 由小數(shù)點(diǎn)、數(shù)字、正負(fù)號(hào)組成由小數(shù)點(diǎn)、數(shù)字、正負(fù)號(hào)組成 長(zhǎng)度長(zhǎng)度nVar 6.內(nèi)存變量的保存與恢復(fù)(內(nèi)存變量的保存與恢復(fù)(.mem) Save to filenameall like 通配符通配符|all except 通通配符配符 Save to mVar all like ?yan* & Restore from filename additive 7、內(nèi)存變量的顯示、內(nèi)
15、存變量的顯示 格式格式1:list memory like to printer|to file 格式格式2:display memory like to printer|to file 注:注: 1)功能:顯示內(nèi)存變量的當(dāng)前信息:變量名、作用域、類功能:顯示內(nèi)存變量的當(dāng)前信息:變量名、作用域、類型、取值。型、取值。 2)List:連屏顯示,如超過(guò)一屏,則只看到最后一屏的內(nèi)容;連屏顯示,如超過(guò)一屏,則只看到最后一屏的內(nèi)容; display:分屏顯示。:分屏顯示。 2)like:只顯示與通配符相匹配的內(nèi):只顯示與通配符相匹配的內(nèi) 存變量。存變量。 8、內(nèi)存變量的清除、內(nèi)存變量的清除 格式格式1:
16、clear memory:清除所有內(nèi)存變量:清除所有內(nèi)存變量 格式格式2:release :清除指定:清除指定 的內(nèi)存變量。的內(nèi)存變量。 格式格式3:release all like|except:清除與通配符匹配的內(nèi)存變量。清除與通配符匹配的內(nèi)存變量。 格式格式4:release all extended:清除所有的內(nèi)清除所有的內(nèi) 存變量。存變量。 例:例: 在命令窗口中輸入:在命令窗口中輸入: x1=123 x2=“abc” x3=2006/02/25 Disp memory like x? 則:在主屏幕中顯示結(jié)果為:則:在主屏幕中顯示結(jié)果為: x1 pub n 123 x2 pub c
17、“abc” x3 pub d 25/02/20062.1.5 數(shù)組數(shù)組 1. 定義定義 數(shù)組由一系列被稱為元素的有序數(shù)據(jù)值系列構(gòu)成,可以數(shù)組由一系列被稱為元素的有序數(shù)據(jù)值系列構(gòu)成,可以用序號(hào)引用這些元素。用序號(hào)引用這些元素。 數(shù)組屬于內(nèi)存變量數(shù)組屬于內(nèi)存變量 數(shù)組有一維數(shù)組和二維數(shù)組數(shù)組有一維數(shù)組和二維數(shù)組 2. 數(shù)組的聲明數(shù)組的聲明(數(shù)組的定義數(shù)組的定義) 數(shù)組使用前應(yīng)預(yù)先聲明:即數(shù)組的定義數(shù)組使用前應(yīng)預(yù)先聲明:即數(shù)組的定義 DECLARE X(5), Y(5,5) 私有數(shù)組私有數(shù)組 DIMENSION A(10),B(10,10) 私有數(shù)組私有數(shù)組 PUBLIC X(3,4) 全局?jǐn)?shù)組全局
18、數(shù)組 LOCAL M(9) 局部數(shù)組局部數(shù)組 數(shù)組在聲明之后,每個(gè)元素被默認(rèn)地賦予數(shù)組在聲明之后,每個(gè)元素被默認(rèn)地賦予.F.值值 3. 數(shù)組元素賦值數(shù)組元素賦值 例例: Dimension arrayname6,3 Arrayname1,2=1113 可以用一個(gè)語(yǔ)句為所有元素賦相同的值可以用一個(gè)語(yǔ)句為所有元素賦相同的值 Arrayname=1113 STORE 10 TO A,B(2),M(4) 與數(shù)組相關(guān)的命令與數(shù)組相關(guān)的命令(可在數(shù)組元素與字段之間移可在數(shù)組元素與字段之間移動(dòng)值動(dòng)值) SCATTER、GATHER、 COPY TO ARRAY、 APPEND FROM ARRAY 4、表與
19、數(shù)組之間的數(shù)據(jù)傳遞、表與數(shù)組之間的數(shù)據(jù)傳遞 SCATTER FIELDS 字段名表字段名表 MEMOTO數(shù)組名數(shù)組名 BLANK GATHER from數(shù)組名數(shù)組名 FIELDS 字段名表字段名表 MEMO2.3 函數(shù)函數(shù) 2.3.1 概述概述 函數(shù):函數(shù): 是預(yù)先編制好的計(jì)算模塊(程序代碼)是預(yù)先編制好的計(jì)算模塊(程序代碼),可供可供VFP程程序或用戶在任何地方調(diào)用;序或用戶在任何地方調(diào)用; 函數(shù)接收一個(gè)或多個(gè)參數(shù)而返回單個(gè)值,它可函數(shù)接收一個(gè)或多個(gè)參數(shù)而返回單個(gè)值,它可嵌入到一個(gè)表達(dá)式中;嵌入到一個(gè)表達(dá)式中; 函數(shù)格式為:函數(shù)名(參數(shù))函數(shù)格式為:函數(shù)名(參數(shù)) 如如:date() bof
20、() eof() 參數(shù)是供函數(shù)或過(guò)程操作的一個(gè)值參數(shù)是供函數(shù)或過(guò)程操作的一個(gè)值 如如:space(10) 中的中的“10”即為參數(shù)即為參數(shù). 函數(shù)分系統(tǒng)函數(shù)和用戶自定義函數(shù)函數(shù)分系統(tǒng)函數(shù)和用戶自定義函數(shù) 2.3.2 系統(tǒng)函數(shù)的分類系統(tǒng)函數(shù)的分類(P46表表2-5) 數(shù)據(jù)類函數(shù)數(shù)據(jù)類函數(shù) 數(shù)據(jù)庫(kù)類函數(shù)數(shù)據(jù)庫(kù)類函數(shù) 環(huán)境類函數(shù)環(huán)境類函數(shù) 輸入輸出類函數(shù)輸入輸出類函數(shù) 程序設(shè)計(jì)類函數(shù)程序設(shè)計(jì)類函數(shù) 函數(shù):函數(shù): 是是vfp語(yǔ)言的重要組成部分語(yǔ)言的重要組成部分 一個(gè)大的一個(gè)大的Vfp應(yīng)用程序往往是由若干個(gè)過(guò)程(子程序)應(yīng)用程序往往是由若干個(gè)過(guò)程(子程序)和函數(shù)組合而成的和函數(shù)組合而成的 函數(shù)將最常用的
21、某些程序功能所對(duì)應(yīng)的命令代碼集函數(shù)將最常用的某些程序功能所對(duì)應(yīng)的命令代碼集中起來(lái)形成文件,供應(yīng)用程序隨時(shí)調(diào)用中起來(lái)形成文件,供應(yīng)用程序隨時(shí)調(diào)用 如何正確使用函數(shù)?如何正確使用函數(shù)? 熟記各函數(shù)的名稱、功能作用熟記各函數(shù)的名稱、功能作用 熟練掌握其語(yǔ)法結(jié)構(gòu)、參數(shù)含義熟練掌握其語(yǔ)法結(jié)構(gòu)、參數(shù)含義 掌握各函數(shù)的返回值內(nèi)容掌握各函數(shù)的返回值內(nèi)容2.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 定義定義是指函數(shù)值為數(shù)值的一類函數(shù),它們的自變量和返回值是指函數(shù)值為數(shù)值的一類函數(shù),它們的自變量和返回值往往都是數(shù)值型數(shù)據(jù)。往往都是數(shù)值型數(shù)據(jù)。 1.1.絕對(duì)值函數(shù)絕對(duì)值函數(shù)格式:格式:ABS(ABS(數(shù)值表達(dá)式
22、數(shù)值表達(dá)式) )功能:返回指定的數(shù)值表達(dá)式的絕對(duì)值。功能:返回指定的數(shù)值表達(dá)式的絕對(duì)值。例例 ? ABS(10),ABS(-5)? ABS(10),ABS(-5)2.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 2.2.求平方根函數(shù)求平方根函數(shù)格式:格式:SQRT(SQRT(數(shù)值表達(dá)式數(shù)值表達(dá)式) )功能:返回指定表達(dá)式的平方根。自變量表達(dá)式的值不功能:返回指定表達(dá)式的平方根。自變量表達(dá)式的值不能為負(fù)。能為負(fù)。例例 ? SQRT(4)? SQRT(4) 3.3.圓周率函數(shù)圓周率函數(shù)格式:格式:PI()PI()功能:返回圓周率功能:返回圓周率(數(shù)值型數(shù)值型) )。該函數(shù)沒(méi)有自變量。該函數(shù)沒(méi)有自變
23、量。SET DECIMALS TO nDecimalPlacesSET DECIMALS TO nDecimalPlaces set deci to 42.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 4.4.求整數(shù)函數(shù)求整數(shù)函數(shù)格式:格式: INT(INT(數(shù)值表達(dá)式數(shù)值表達(dá)式) ) CEILING(CEILING(數(shù)值表達(dá)式數(shù)值表達(dá)式) ) FLOOR(FLOOR(數(shù)值表達(dá)式數(shù)值表達(dá)式) )功能:功能: INT()INT()返回指定數(shù)值表達(dá)式的整數(shù)部分。返回指定數(shù)值表達(dá)式的整數(shù)部分。 CEILING()CEILING()返回大于或等于指定數(shù)值表達(dá)式的最小整數(shù)。返回大于或等于指定數(shù)值表達(dá)式的
24、最小整數(shù)。 FLOOR()FLOOR()返回小于或等于指定數(shù)值表達(dá)式的最大整數(shù)。返回小于或等于指定數(shù)值表達(dá)式的最大整數(shù)。例例 X=5.8X=5.8 ? INT(X)? INT(X);INT(-X)INT(-X);CEILING(X)CEILING(X);CEILING(-X)CEILING(-X);FLOOR(X)FLOOR(X);FLOOR(-X) FLOOR(-X) 2.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 5.5.四舍五入函數(shù)四舍五入函數(shù)格式:格式: ROUND(ROUND(數(shù)值表達(dá)式數(shù)值表達(dá)式1 1,數(shù)值表達(dá)式數(shù)值表達(dá)式2 2) )功能:功能: 返回指定表達(dá)式在指定位置四舍五入
25、后的結(jié)果。返回指定表達(dá)式在指定位置四舍五入后的結(jié)果。說(shuō)明:說(shuō)明: 數(shù)值表達(dá)式數(shù)值表達(dá)式2 2指明四舍五入的位置。若指明四舍五入的位置。若數(shù)值表達(dá)式數(shù)值表達(dá)式2 2大大于等于于等于0 0,那么它表示的是要保留的小數(shù)位數(shù):若,那么它表示的是要保留的小數(shù)位數(shù):若數(shù)值表達(dá)式數(shù)值表達(dá)式2 2小于小于0 0,那么它表示的是整數(shù)部分的舍入位數(shù)。,那么它表示的是整數(shù)部分的舍入位數(shù)。例例 X=645.345X=645.345 ? ROUND(X,2) ROUND(X,1),ROUND(X,0),ROUND(X,-1) ? ROUND(X,2) ROUND(X,1),ROUND(X,0),ROUND(X,-1)
26、2.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 6.6.求余數(shù)函數(shù)求余數(shù)函數(shù)* * * * * * 模模格式:格式: MOD(MOD(數(shù)值表達(dá)式數(shù)值表達(dá)式1 1,數(shù)值表達(dá)式數(shù)值表達(dá)式) )功能:功能: 返回兩個(gè)數(shù)值相除后的余數(shù)。返回兩個(gè)數(shù)值相除后的余數(shù)。說(shuō)明:說(shuō)明: 數(shù)值表達(dá)式數(shù)值表達(dá)式1 1是被除數(shù),是被除數(shù),數(shù)值表達(dá)式數(shù)值表達(dá)式2 2是除數(shù)。是除數(shù)。 余數(shù)的正負(fù)號(hào)與除數(shù)相同余數(shù)的正負(fù)號(hào)與除數(shù)相同。 如果被除數(shù)與除數(shù)同號(hào),那么函數(shù)值即為兩數(shù)相除的余數(shù);如果被除數(shù)與除數(shù)同號(hào),那么函數(shù)值即為兩數(shù)相除的余數(shù); 如果被除數(shù)與除數(shù)異號(hào),則函數(shù)值為兩數(shù)相除的余數(shù)再加上除如果被除數(shù)與除數(shù)異號(hào),則函數(shù)值為
27、兩數(shù)相除的余數(shù)再加上除數(shù)的值。數(shù)的值。例例 ? MOD(10? MOD(10,3)3),MOD(10MOD(10,-3)-3),MOD(-10MOD(-10,3)3),MOD(-10MOD(-10,-3)-3)2.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 7.求最大值和最小值函數(shù)求最大值和最小值函數(shù) 格式:格式: MAX(數(shù)值表達(dá)式數(shù)值表達(dá)式1,數(shù)值表達(dá)式數(shù)值表達(dá)式2,數(shù)值表達(dá)式數(shù)值表達(dá)式3 MIN(數(shù)值表達(dá)式數(shù)值表達(dá)式1,數(shù)值表達(dá)式數(shù)值表達(dá)式2,數(shù)值表達(dá)式數(shù)值表達(dá)式3 功能:功能: MAX()計(jì)算各自變量表達(dá)式的值,并返回其中的最大值。計(jì)算各自變量表達(dá)式的值,并返回其中的最大值。 MIN
28、()計(jì)算各自變量表達(dá)式的值,并返回其中的最小值。計(jì)算各自變量表達(dá)式的值,并返回其中的最小值。 說(shuō)明:說(shuō)明: 自變量表達(dá)式的類型可以是數(shù)值型、字符型、貨幣型、雙精度型、自變量表達(dá)式的類型可以是數(shù)值型、字符型、貨幣型、雙精度型、浮點(diǎn)型、日期型和浮點(diǎn)型、日期型和 日期時(shí)間型,但所有表達(dá)式的類型必須相同。日期時(shí)間型,但所有表達(dá)式的類型必須相同。 例例 ? MAX(8,100),MAX(8,100),MIN(工作工作,學(xué)習(xí)學(xué)習(xí),休休息息) 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 8.隨機(jī)數(shù)函數(shù)隨機(jī)數(shù)函數(shù)*(參考參考) 格式:格式: RAND() 功能:功能: 返回返回01之間的隨機(jī)數(shù)。之間的隨機(jī)數(shù)。 例例 ?
29、 rand()2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù)字符函數(shù)是指自變量一般是字符型數(shù)據(jù)的函數(shù)。字符函數(shù)是指自變量一般是字符型數(shù)據(jù)的函數(shù)。 1.1.求字符串長(zhǎng)度函數(shù)求字符串長(zhǎng)度函數(shù)格式:格式: LEN(LEN(字符表達(dá)式字符表達(dá)式) )功能:功能: 返回指定字符表達(dá)式值的長(zhǎng)度,即所包含的字符個(gè)數(shù)。函數(shù)值返回指定字符表達(dá)式值的長(zhǎng)度,即所包含的字符個(gè)數(shù)。函數(shù)值為數(shù)值型。為數(shù)值型。例例 X=bookX=book ? LEN(X)? LEN(X)2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù) 2.2.小寫轉(zhuǎn)換函數(shù)小寫轉(zhuǎn)換函數(shù)格式:格式: LOWER(LOWER(字符表達(dá)式字符表達(dá)式) )功能
30、:功能: 將指定表達(dá)式值中的大寫字母轉(zhuǎn)換成小寫字母,其將指定表達(dá)式值中的大寫字母轉(zhuǎn)換成小寫字母,其他字符不變。他字符不變。例例 ? LOWER(BOOK),LOWER(abcDeFg20)? LOWER(BOOK),LOWER(abcDeFg20)2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù) 3.3.大寫轉(zhuǎn)換函數(shù)大寫轉(zhuǎn)換函數(shù)格式:格式: UPPER(UPPER(字符表達(dá)式字符表達(dá)式) )功能:功能: 將指定表達(dá)式值中的小寫字母轉(zhuǎn)換成大寫字母,其將指定表達(dá)式值中的小寫字母轉(zhuǎn)換成大寫字母,其他字符不變。他字符不變。例例 ? UPPER(work)? UPPER(work),UPPER(abcD
31、eFg)UPPER(abcDeFg)2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù) 4.空格字符串生成函數(shù)空格字符串生成函數(shù) 格式:格式: SPACE(數(shù)值表達(dá)式數(shù)值表達(dá)式) 功能:功能: 返回由指定數(shù)目的空格組成的字符串。返回由指定數(shù)目的空格組成的字符串。 5.刪除前后空格函數(shù)刪除前后空格函數(shù) 格式:格式: TRIM(字符表達(dá)式字符表達(dá)式 LTRIM(字符表達(dá)式字符表達(dá)式) ALLTRIM(字符表達(dá)式字符表達(dá)式) 功能:功能: TRIM()返回指定字符表達(dá)式值去掉尾部空格后形成的字符串。返回指定字符表達(dá)式值去掉尾部空格后形成的字符串。 LTRIM()返回指定字符表達(dá)式值去掉前導(dǎo)空格后形成的
32、字符串。返回指定字符表達(dá)式值去掉前導(dǎo)空格后形成的字符串。 ALLtRIM()返回指定字符表達(dá)式值去掉前導(dǎo)和尾部空格后形成的字返回指定字符表達(dá)式值去掉前導(dǎo)和尾部空格后形成的字符串。符串。 例例 STORE SPACE(1)+VFP+SPACE(3) TO X ? TRIM(X) +LTRIM(X)+ALLTRIM(X)6.取子串函數(shù)取子串函數(shù)格式:格式: LEFT(字符表達(dá)式字符表達(dá)式,長(zhǎng)度長(zhǎng)度) RIGHT(字符表達(dá)式字符表達(dá)式,長(zhǎng)度長(zhǎng)度) SUBSTR(字符表達(dá)式字符表達(dá)式,起始位置起始位置,長(zhǎng)度長(zhǎng)度)功能:功能: LEFT()從指定表達(dá)式值的左端取一個(gè)指定長(zhǎng)度的子串作為函數(shù)值。從指定表達(dá)式
33、值的左端取一個(gè)指定長(zhǎng)度的子串作為函數(shù)值。 RIGHT()從指定表達(dá)式值的右端取一個(gè)指定長(zhǎng)度的子串作為函數(shù)值。從指定表達(dá)式值的右端取一個(gè)指定長(zhǎng)度的子串作為函數(shù)值。 SUBSTR()從指定表達(dá)式的值指定起始位置取指定長(zhǎng)度的子串作為函數(shù)值。從指定表達(dá)式的值指定起始位置取指定長(zhǎng)度的子串作為函數(shù)值。說(shuō)明:說(shuō)明: 在在SUBSTR()函數(shù)中,若缺省第三個(gè)自變量函數(shù)中,若缺省第三個(gè)自變量長(zhǎng)度長(zhǎng)度,則函數(shù)從指定位置,則函數(shù)從指定位置一直取到最后一個(gè)字符。一直取到最后一個(gè)字符。例:例: STORE GOOD BYE! TO X ? LEFT(X,2),SUBSTR(X,6,2)+SUBSTR(X,6),RIGH
34、T(X,3) 7.計(jì)算子串出現(xiàn)次數(shù)函數(shù)計(jì)算子串出現(xiàn)次數(shù)函數(shù) 格式:格式: OCCURE(字符表達(dá)式字符表達(dá)式1,字符表達(dá)式字符表達(dá)式2) 功能:功能: 返回第一個(gè)字符串在第二個(gè)字符串中出現(xiàn)的次數(shù),函數(shù)返回第一個(gè)字符串在第二個(gè)字符串中出現(xiàn)的次數(shù),函數(shù)值為數(shù)值型。若第二個(gè)字符串不是第一個(gè)字符串的子串,值為數(shù)值型。若第二個(gè)字符串不是第一個(gè)字符串的子串,函數(shù)值為函數(shù)值為0。 例例 STORE abarabcadababcr TO X ?OCCURS(a,X),OCCURS(b,X),OCCURS(c,X),OCCURS(f,X),OCCURS(r,X) 2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù)
35、 8.求子串位置函數(shù)求子串位置函數(shù) 格式:格式: AT(字符表達(dá)式字符表達(dá)式1,字符表達(dá)式字符表達(dá)式2,數(shù)值表達(dá)式數(shù)值表達(dá)式) ATC(字符表達(dá)式字符表達(dá)式1,字符表達(dá)式字符表達(dá)式2,數(shù)值表達(dá)式數(shù)值表達(dá)式) 功能:功能: AT()的函數(shù)值為數(shù)值型。如果的函數(shù)值為數(shù)值型。如果字符表達(dá)式字符表達(dá)式1是是字符表達(dá)式字符表達(dá)式2的子串,則返回的子串,則返回字符表達(dá)式字符表達(dá)式1值的首字符在值的首字符在字符表達(dá)式字符表達(dá)式2值值中的位置;若不是子串,則返回中的位置;若不是子串,則返回0。 說(shuō)明:說(shuō)明: ATC()與與AT()功能類似,但在子串比較時(shí)不區(qū)分字母大小寫。功能類似,但在子串比較時(shí)不區(qū)分字母大小
36、寫。 第三個(gè)自變量第三個(gè)自變量數(shù)值表達(dá)式數(shù)值表達(dá)式用于表明要在用于表明要在字符表達(dá)式字符表達(dá)式2值中值中搜索搜索字符表達(dá)式字符表達(dá)式1值的第幾次出現(xiàn),其默認(rèn)值是值的第幾次出現(xiàn),其默認(rèn)值是1。 例例 STORE This is Visual FoxPro TO x ? AT(pro,x),ATC(fox,x),AT(is,x,3),AT(xo,x) 2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù) 9.9.子串替換函數(shù)子串替換函數(shù) 格式:格式:STUFF(STUFF(字符表達(dá)式字符表達(dá)式1 1,起始位置起始位置,長(zhǎng)度長(zhǎng)度,字符表達(dá)字符表達(dá)式式2 2) ) 功能:功能:用用字符表達(dá)式字符表達(dá)式2
37、2值替換值替換字符表達(dá)式字符表達(dá)式1 1中由中由起始位置起始位置和和長(zhǎng)度長(zhǎng)度指明的一個(gè)子串。指明的一個(gè)子串。 說(shuō)明:說(shuō)明:替換和被替換的字符個(gè)數(shù)不一定相等。如果替換和被替換的字符個(gè)數(shù)不一定相等。如果長(zhǎng)度長(zhǎng)度值是值是0 0,字字符表達(dá)式符表達(dá)式2 2則插在由則插在由起始位置起始位置指定的字符前面。如果指定的字符前面。如果字符字符表達(dá)式表達(dá)式2 2值是空串,那么值是空串,那么字符表達(dá)式字符表達(dá)式1 1中由中由起始位置起始位置和和長(zhǎng)度長(zhǎng)度指明的子串被刪去。指明的子串被刪去。 例例STORE GOOD BYE! TO X1STORE GOOD BYE! TO X1STORE MORNING TO X2
38、STORE MORNING TO X2? STUFF(X1,6,3,X2),STUFF(X1,1,4,X2) ? STUFF(X1,6,3,X2),STUFF(X1,1,4,X2) 2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù) 10.字符串匹配函數(shù)字符串匹配函數(shù) 格式:格式: LIKE(字符表達(dá)式字符表達(dá)式1,字符表達(dá)式字符表達(dá)式2) 功能:功能: 比較兩個(gè)字符串對(duì)應(yīng)位置上的字符,若所有對(duì)應(yīng)字符都相匹配,則比較兩個(gè)字符串對(duì)應(yīng)位置上的字符,若所有對(duì)應(yīng)字符都相匹配,則函數(shù)返回邏輯真函數(shù)返回邏輯真(.T.),否則返回邏輯假,否則返回邏輯假(.F.)。 說(shuō)明:說(shuō)明: 字符表達(dá)式字符表達(dá)式1中可以包
39、含通配符中可以包含通配符*和和?。*可與任何數(shù)目的字符相可與任何數(shù)目的字符相匹配,匹配,?可以與任何單個(gè)字符相匹配??梢耘c任何單個(gè)字符相匹配。 例如:例如: STORE abc TO X STORE abcd TO y ?LIKE(ab*,x),LIKE(ab*,y),LIKE(x,y),LIKE(?b?,x),LIKE(Abc,x) 11.11.字符替換函數(shù)字符替換函數(shù)格式:格式: CHRTRAN(CHRTRAN(字符表達(dá)式字符表達(dá)式1 1,字符表達(dá)式字符表達(dá)式2 2,字符表達(dá)式字符表達(dá)式3 3) )功能:功能: 當(dāng)?shù)谝粋€(gè)字符串中的一個(gè)或多個(gè)字符與第二個(gè)字符串中的某個(gè)字符相當(dāng)?shù)谝粋€(gè)字符串中的
40、一個(gè)或多個(gè)字符與第二個(gè)字符串中的某個(gè)字符相匹配時(shí),就用第三個(gè)字符串中的對(duì)應(yīng)字符匹配時(shí),就用第三個(gè)字符串中的對(duì)應(yīng)字符( (相同位置相同位置) )替換第一個(gè)字符替換第一個(gè)字符串中這些字符。串中這些字符。說(shuō)明:說(shuō)明: 如果第三個(gè)字符串包含的字符個(gè)數(shù)少于第二個(gè)字符串包含的字符個(gè)數(shù),如果第三個(gè)字符串包含的字符個(gè)數(shù)少于第二個(gè)字符串包含的字符個(gè)數(shù),因而沒(méi)有對(duì)應(yīng)字符,那么第一個(gè)字符串中相匹配的各字符將被刪除。因而沒(méi)有對(duì)應(yīng)字符,那么第一個(gè)字符串中相匹配的各字符將被刪除。如果第三個(gè)字符串包含的字符個(gè)數(shù)多于第二個(gè)字符串包含的字符個(gè)數(shù),如果第三個(gè)字符串包含的字符個(gè)數(shù)多于第二個(gè)字符串包含的字符個(gè)數(shù),多余字符被忽略。該函
41、數(shù)的自變量是三個(gè)字符表達(dá)式。多余字符被忽略。該函數(shù)的自變量是三個(gè)字符表達(dá)式。例如:例如: x1=CHRTRAN(ABACAD,ACD,X12)x1=CHRTRAN(ABACAD,ACD,X12) y1=CHRTRAN(y1=CHRTRAN(計(jì)算機(jī)計(jì)算機(jī)ABCABC, 計(jì)算機(jī)計(jì)算機(jī) , 電腦電腦) z1=CHRTRAN(z1=CHRTRAN(大家好大家好!, 大家大家 , 您您) ? x1,y1,z1? x1,y1,z1 XBX1X2 XBX1X2 電腦電腦 ABC ABC 您好您好! ! 23.函數(shù)函數(shù)LEN(SPACE(3)-SPACE(2)的返回的返回值是值是_(23)_(11春)春) A
42、.1 B.3 C.2 D.5 23.函數(shù)函數(shù)LEN(DTOC(DATE(),1)的返回值是的返回值是 _(23)_ (10秋秋) A.1 B.4 C.8 D.10 ?mod(5,3), mod(-5,3), mod(5,-3), mod(-5,-3)2.3.2.3 2.3.2.3 日期和時(shí)間函數(shù)日期和時(shí)間函數(shù)1.系統(tǒng)日期和時(shí)間函數(shù)系統(tǒng)日期和時(shí)間函數(shù) 格式:格式: DATE() TIME() DATETIME() 功能:功能: DATE()返回當(dāng)前系統(tǒng)日期,函數(shù)值為日期型。返回當(dāng)前系統(tǒng)日期,函數(shù)值為日期型。 TIME()以以24小時(shí)制、小時(shí)制、hh:mm:ss格式返回當(dāng)前系統(tǒng)時(shí)間,格式返回當(dāng)前系
43、統(tǒng)時(shí)間,函數(shù)值為字符型。函數(shù)值為字符型。 DATETIME()返回當(dāng)前系統(tǒng)日期時(shí)間,函數(shù)值為日期時(shí)返回當(dāng)前系統(tǒng)日期時(shí)間,函數(shù)值為日期時(shí)間型。間型。 例如:例如: ? DATE(),TIME(),DATETIME()2.3.2.3 2.3.2.3 日期和時(shí)間函數(shù)日期和時(shí)間函數(shù) 2.求年份、月份和天數(shù)函數(shù)求年份、月份和天數(shù)函數(shù) 格式:格式: YEAR(日期表達(dá)式日期表達(dá)式|日期時(shí)間表達(dá)式日期時(shí)間表達(dá)式) MONTH(日期表達(dá)式日期表達(dá)式|日期時(shí)間表達(dá)式日期時(shí)間表達(dá)式) DAY(日期表達(dá)式日期表達(dá)式|日期時(shí)間表達(dá)式日期時(shí)間表達(dá)式) 功能:功能: YEAR()從指定的日期表達(dá)式或日期時(shí)間表達(dá)式中返回年
44、份從指定的日期表達(dá)式或日期時(shí)間表達(dá)式中返回年份(如如2003)。 MONTH()從指定的日期表達(dá)式或日期時(shí)間表達(dá)式中返回月份。從指定的日期表達(dá)式或日期時(shí)間表達(dá)式中返回月份。 DAY()從指定的日期表達(dá)式或日期時(shí)間表達(dá)式中返回月里面的天數(shù)。從指定的日期表達(dá)式或日期時(shí)間表達(dá)式中返回月里面的天數(shù)。 說(shuō)明:說(shuō)明: 這三個(gè)函數(shù)的返回值都為數(shù)值型。這三個(gè)函數(shù)的返回值都為數(shù)值型。 例例 STORE 2001-08-25 TO d ? YEAR(d),MONTH(d),DAY(d) 2.3.2.3 2.3.2.3 日期和時(shí)間函數(shù)日期和時(shí)間函數(shù) 3.3.時(shí)、分和秒函數(shù)時(shí)、分和秒函數(shù)格式:格式: HOUR(HOU
45、R(日期時(shí)間表達(dá)式日期時(shí)間表達(dá)式) ) MINUTE(MINUTE(日期時(shí)間表達(dá)式日期時(shí)間表達(dá)式) ) SEC(SEC(日期時(shí)間表達(dá)式日期時(shí)間表達(dá)式) )功能:功能: HOUR()HOUR()從指定的日期時(shí)間表達(dá)式中返回小時(shí)部分從指定的日期時(shí)間表達(dá)式中返回小時(shí)部分(24(24小時(shí)制小時(shí)制) )。 MINUTE()MINUTE()從指定的日期時(shí)間表達(dá)式中返回分種部分。從指定的日期時(shí)間表達(dá)式中返回分種部分。 SEC()SEC()從指定的日期時(shí)間表達(dá)式中返回秒數(shù)部分。從指定的日期時(shí)間表達(dá)式中返回秒數(shù)部分。說(shuō)明:說(shuō)明: 這三個(gè)函數(shù)的返回值都為數(shù)值型。這三個(gè)函數(shù)的返回值都為數(shù)值型。例如:例如: STOR
46、E 2003-08-25 04:20:40 P TO tSTORE 2003-08-25 04:20:40 P TO t ? HOUR(t)? HOUR(t),MINUTE(t)MINUTE(t),SEC(t) SEC(t) 4.DOW()函數(shù)函數(shù)*格式:格式: dow(dow(日期表達(dá)式日期表達(dá)式/ /日期時(shí)間表達(dá)式日期時(shí)間表達(dá)式) )功能:功能: 從指定的日期表達(dá)式從指定的日期表達(dá)式/ /日期時(shí)間表達(dá)式返回該日期日期時(shí)間表達(dá)式返回該日期是一周的第幾天是一周的第幾天. .說(shuō)明:說(shuō)明: 返回值為數(shù)值型。返回值為數(shù)值型。( (注意值與星期對(duì)應(yīng)關(guān)系注意值與星期對(duì)應(yīng)關(guān)系) )例例 ? dow(dat
47、e()? dow(date()數(shù)值函數(shù)名數(shù)值函數(shù)名功能功能說(shuō)明說(shuō)明ABS()絕對(duì)值絕對(duì)值返回返回X的絕對(duì)值的絕對(duì)值SIGN()符號(hào)函數(shù)符號(hào)函數(shù)當(dāng)當(dāng)X為正數(shù)、負(fù)數(shù)和為正數(shù)、負(fù)數(shù)和0時(shí)返回時(shí)返回1、-1、0SQRT()平方根平方根返回返回X的平方根的平方根PI()圓周率圓周率沒(méi)有自變量,直接返回圓周率沒(méi)有自變量,直接返回圓周率INT()求整數(shù)求整數(shù)返回返回X的整數(shù)部分的整數(shù)部分CEILING()求整數(shù)求整數(shù)返回大于等于返回大于等于X的最小整數(shù)的最小整數(shù)FLOOR()求整數(shù)求整數(shù)返回小于等于返回小于等于X的最大整數(shù)的最大整數(shù)ROUND(,)四舍五入四舍五入由由Y指定指定X的舍入時(shí)小數(shù)點(diǎn)后的位數(shù)的舍入
48、時(shí)小數(shù)點(diǎn)后的位數(shù),返回返回X的四舍五入的結(jié)果。的四舍五入的結(jié)果。MOD(,)求余數(shù)求余數(shù)返回返回X除以除以Y時(shí)的余數(shù)時(shí)的余數(shù)MAX(,.)最大值最大值返回所有自變量中的最大值返回所有自變量中的最大值MIN(,.)最小值最小值返回所有自變量中的最小值返回所有自變量中的最小值函數(shù)名函數(shù)名功能功能說(shuō)明說(shuō)明LEN()字符串長(zhǎng)度字符串長(zhǎng)度返回返回X的字節(jié)數(shù)的字節(jié)數(shù).字符占字符占1個(gè)個(gè),漢字占漢字占2個(gè)個(gè)LOWER()轉(zhuǎn)換為小寫轉(zhuǎn)換為小寫返回返回X所有英文字符轉(zhuǎn)換為小寫的字符串所有英文字符轉(zhuǎn)換為小寫的字符串UPPER()轉(zhuǎn)換為大寫轉(zhuǎn)換為大寫返回返回X所有英文字符轉(zhuǎn)換為大寫的字符串所有英文字符轉(zhuǎn)換為大寫的字
49、符串SPACE()空格字符串空格字符串返回返回Y個(gè)空格的空格字符串個(gè)空格的空格字符串TRIM()壓縮尾部空格壓縮尾部空格返回去掉返回去掉X尾部空格的字符串尾部空格的字符串LTRIM()壓縮前導(dǎo)空格壓縮前導(dǎo)空格返回去掉返回去掉X左部空格的字符串左部空格的字符串ALLTRIM()壓縮頭尾空格壓縮頭尾空格返回去掉返回去掉X頭尾空格的字符串頭尾空格的字符串LEFT(,)取左子串取左子串返回返回X從左部開(kāi)始的從左部開(kāi)始的Y個(gè)字符的字符串個(gè)字符的字符串RIGHT(,)取右子串取右子串返回返回X從右部開(kāi)始的從右部開(kāi)始的Y個(gè)字符的字符串個(gè)字符的字符串SUBSTR(,)取子串取子串返回返回X從中間從中間Y1位置
50、開(kāi)始的位置開(kāi)始的Y2個(gè)字符的字符串個(gè)字符的字符串AT(,) 子串位置子串位置返回返回X1在在X2中第中第Y次出現(xiàn)的首字符位置,次出現(xiàn)的首字符位置,區(qū)分大小寫區(qū)分大小寫STUFF(,)子串替換子串替換返回用返回用X2替換替換X1中從中從Y1位置開(kāi)始的位置開(kāi)始的Y2個(gè)字符個(gè)字符CHRTRAN(,)字符替換字符替換返回所有返回所有X2在在X1中的內(nèi)容被中的內(nèi)容被X3替換后的字符串替換后的字符串LIKE(,)字符串匹配字符串匹配返回返回X2是否和是否和X1對(duì)應(yīng)位置上的內(nèi)容匹配,對(duì)應(yīng)位置上的內(nèi)容匹配,X1可以含通配符可以含通配符函數(shù)名函數(shù)名功能功能說(shuō)明說(shuō)明注:注:X1,X2,X3均為字符串表達(dá)式,均為字
51、符串表達(dá)式,Y1,Y2均為數(shù)值表達(dá)式均為數(shù)值表達(dá)式函數(shù)名函數(shù)名功能功能說(shuō)明說(shuō)明DATE()系統(tǒng)日期系統(tǒng)日期返回系統(tǒng)日期返回系統(tǒng)日期TIME()系統(tǒng)時(shí)間系統(tǒng)時(shí)間返回系統(tǒng)時(shí)間返回系統(tǒng)時(shí)間DATETIME()系統(tǒng)日期時(shí)間系統(tǒng)日期時(shí)間返回系統(tǒng)日期時(shí)間返回系統(tǒng)日期時(shí)間YEAR()年份年份返回返回X中的年份中的年份MONTH()月份月份返回返回X中的月份中的月份DAY()天數(shù)天數(shù)返回返回X中月份里的天數(shù)中月份里的天數(shù)HOUR()小時(shí)小時(shí)返回返回Y中的小時(shí)部分(中的小時(shí)部分(24小時(shí)制)小時(shí)制)MINUTE()分鐘分鐘返回返回Y中的分鐘部分中的分鐘部分SEC()秒秒返回返回Y中的秒鐘部分中的秒鐘部分注:注:
52、X為日期型表達(dá)式或日期時(shí)間型表達(dá)式,為日期型表達(dá)式或日期時(shí)間型表達(dá)式,Y為日期時(shí)間型表達(dá)式為日期時(shí)間型表達(dá)式2.3.2.4 2.3.2.4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù) 是將某一種類型的數(shù)據(jù)轉(zhuǎn)換成另一種類型的數(shù)據(jù)。是將某一種類型的數(shù)據(jù)轉(zhuǎn)換成另一種類型的數(shù)據(jù)。 1.數(shù)值轉(zhuǎn)換成字符串?dāng)?shù)值轉(zhuǎn)換成字符串 * 格式:格式: STR(數(shù)值表達(dá)式數(shù)值表達(dá)式,長(zhǎng)度長(zhǎng)度,小數(shù)位數(shù)小數(shù)位數(shù)) 功能:功能: 將將數(shù)值表達(dá)式數(shù)值表達(dá)式的值轉(zhuǎn)換成字符串,轉(zhuǎn)換時(shí)根據(jù)需要自動(dòng)進(jìn)行四的值轉(zhuǎn)換成字符串,轉(zhuǎn)換時(shí)根據(jù)需要自動(dòng)進(jìn)行四舍五入。舍五入。 說(shuō)明:說(shuō)明: (1)返回字符串的理想長(zhǎng)度返回字符串的理想長(zhǎng)度L應(yīng)該是應(yīng)該是數(shù)值表
53、達(dá)式數(shù)值表達(dá)式值的整數(shù)部分位值的整數(shù)部分位數(shù)加上數(shù)加上小數(shù)位數(shù)小數(shù)位數(shù)值,再加上值,再加上1位小數(shù)點(diǎn)。位小數(shù)點(diǎn)。 (2)如果如果長(zhǎng)度長(zhǎng)度值大于值大于L,則字符串加前導(dǎo)空格以滿足規(guī)定的,則字符串加前導(dǎo)空格以滿足規(guī)定的長(zhǎng)長(zhǎng)度度要求;要求; (3)如果如果長(zhǎng)度長(zhǎng)度值大于等于值大于等于數(shù)值表達(dá)式數(shù)值表達(dá)式值的整數(shù)部分位數(shù)值的整數(shù)部分位數(shù)(包包括負(fù)號(hào)括負(fù)號(hào))但又小于但又小于L,則優(yōu)先滿足整數(shù)部分而自動(dòng)調(diào)整小數(shù)位數(shù);,則優(yōu)先滿足整數(shù)部分而自動(dòng)調(diào)整小數(shù)位數(shù);2.3.2.4 2.3.2.4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù)(4)(4)如果如果長(zhǎng)度長(zhǎng)度值小于值小于數(shù)值表達(dá)式數(shù)值表達(dá)式值的整數(shù)部分值的整數(shù)部分位數(shù)
54、,則返回一串星號(hào)位數(shù),則返回一串星號(hào)( (* *) )。(5)(5)小數(shù)位數(shù)小數(shù)位數(shù)的默認(rèn)值為的默認(rèn)值為0 0,長(zhǎng)度長(zhǎng)度的默認(rèn)值為的默認(rèn)值為1010。例例 STORE -834.456 TO XSTORE -834.456 TO X ? X=+STR(X? X=+STR(X,8 8,3)3) X=-834.456X=-834.456 ? STR(X? STR(X,9 9,2)2),STR(XSTR(X,6 6,2)2),(STR(X(STR(X,3)3),STR(XSTR(X,6)6),STR(X) STR(X) 2.3.2.4 2.3.2.4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù) 2.2.字符串
55、轉(zhuǎn)換成數(shù)值字符串轉(zhuǎn)換成數(shù)值格式:格式: VAL(VAL(字符表達(dá)式字符表達(dá)式) )功能:功能: 將由數(shù)字符號(hào)將由數(shù)字符號(hào)( (包括正負(fù)號(hào)、小數(shù)點(diǎn)包括正負(fù)號(hào)、小數(shù)點(diǎn)) )組成的字符型數(shù)據(jù)轉(zhuǎn)換成組成的字符型數(shù)據(jù)轉(zhuǎn)換成相應(yīng)的數(shù)值型數(shù)據(jù)。相應(yīng)的數(shù)值型數(shù)據(jù)。說(shuō)明:說(shuō)明: (1)(1)若字符串內(nèi)出現(xiàn)非數(shù)字字符,那么只轉(zhuǎn)換前面部分;若字符串內(nèi)出現(xiàn)非數(shù)字字符,那么只轉(zhuǎn)換前面部分; (2)(2)若字符串的首字符不是數(shù)字符號(hào),則返回?cái)?shù)值零若字符串的首字符不是數(shù)字符號(hào),則返回?cái)?shù)值零,但忽略前,但忽略前導(dǎo)空格。導(dǎo)空格。 例如:例如:STORE -6789TO xSTORE -6789TO xSTORE .23 TO
56、ySTORE .23 TO ySTORE A42TO zSTORE A42TO z? VAL(x),VAL(x+y),VAL(x+z),VAL(z+y) ? VAL(x),VAL(x+y),VAL(x+z),VAL(z+y) 2.3.2.4 2.3.2.4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù)3.字符串轉(zhuǎn)換成日期或日期時(shí)間字符串轉(zhuǎn)換成日期或日期時(shí)間格式:格式:CTOD(字符表達(dá)式字符表達(dá)式)CTOT(字符表達(dá)式字符表達(dá)式)功能:功能:CTOD()將將字符表達(dá)式字符表達(dá)式值轉(zhuǎn)換成日期型數(shù)據(jù)。值轉(zhuǎn)換成日期型數(shù)據(jù)。CTOT()將將字符表達(dá)式字符表達(dá)式值轉(zhuǎn)換成日期時(shí)間型數(shù)據(jù)。值轉(zhuǎn)換成日期時(shí)間型數(shù)據(jù)。說(shuō)明:
57、說(shuō)明:字符串中的日期部分格式要與字符串中的日期部分格式要與SET DATE TO 命令設(shè)置的格式一致。其中的年份可命令設(shè)置的格式一致。其中的年份可以用四位,也可以用兩位。如果用兩位,則世紀(jì)由以用四位,也可以用兩位。如果用兩位,則世紀(jì)由SET CENTURY TO 語(yǔ)句指定。語(yǔ)句指定。例如:例如: SET DATE TO YMD SET CENTURY ON &顯示日期或日期時(shí)間時(shí),用顯示日期或日期時(shí)間時(shí),用4位數(shù)顯示年分位數(shù)顯示年分 SET CENTURY TO 19 ROLLOVER 51 d1=CTOD(20030725) t1=CTOT(20030725+TIME() ? d1,
58、t1,CTOD(500101),CTOD(510101)這里,這里,SET CENTURY TO語(yǔ)句指定:小于語(yǔ)句指定:小于51的兩位數(shù)年份屬于的兩位數(shù)年份屬于21世紀(jì)世紀(jì)(19+1),而大于等,而大于等于于51的兩位數(shù)年份屬于的兩位數(shù)年份屬于20世紀(jì)世紀(jì)(19)。2.3.2.4 2.3.2.4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù) 4.4.日期或日期時(shí)間轉(zhuǎn)換成字符串日期或日期時(shí)間轉(zhuǎn)換成字符串格式:格式: DTOC(DTOC(日期表達(dá)式日期表達(dá)式| |日期時(shí)間表達(dá)式日期時(shí)間表達(dá)式,1 1) ) TTOC(TTOC(日期時(shí)間表達(dá)式日期時(shí)間表達(dá)式,1 1) )功能:功能: DTOC()DTOC()將日
59、期型數(shù)據(jù)或日期時(shí)間數(shù)據(jù)的日期部分轉(zhuǎn)換成字符串將日期型數(shù)據(jù)或日期時(shí)間數(shù)據(jù)的日期部分轉(zhuǎn)換成字符串 TTOC()TTOC()將日期時(shí)間數(shù)據(jù)轉(zhuǎn)換成字符串。將日期時(shí)間數(shù)據(jù)轉(zhuǎn)換成字符串。說(shuō)明:說(shuō)明: (1)(1)字符串中日期部分的格式與字符串中日期部分的格式與SET DATE TOSET DATE TO語(yǔ)句的設(shè)置和語(yǔ)句的設(shè)置和SET SET CENTURY ON|OFF(ON CENTURY ON|OFF(ON 為四位年份,為四位年份,OFFOFF為兩位數(shù)年份為兩位數(shù)年份) )語(yǔ)句的設(shè)語(yǔ)句的設(shè)置有關(guān)。置有關(guān)。 (2)(2)時(shí)間部分的格式與時(shí)間部分的格式與SET HOURS TO 12|24SET HOUR
60、S TO 12|24語(yǔ)句的設(shè)置有關(guān)。語(yǔ)句的設(shè)置有關(guān)。 (3)DTOC()(3)DTOC()函數(shù),如果使用選項(xiàng)函數(shù),如果使用選項(xiàng)1 1,則字符串的格式總是,則字符串的格式總是YYYYMMDDYYYYMMDD,共,共8 8個(gè)字符。對(duì)個(gè)字符。對(duì)TTOC()TTOC()來(lái)說(shuō),如果使用選項(xiàng)來(lái)說(shuō),如果使用選項(xiàng)1 1,則字,則字符串的格式總是為符串的格式總是為YYYYMMDDHHMMSSYYYYMMDDHHMMSS,采用,采用2424小時(shí)制,共小時(shí)制,共1414個(gè)字個(gè)字符符. .例如:例如: STORE DATETIME() TO tSTORE DATETIME() TO t ? t? t 0808252503 10:54
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 實(shí)踐站最美庭院活動(dòng)方案
- 寶寶藝術(shù)照活動(dòng)方案
- 宣傳文化室活動(dòng)方案
- 家居活動(dòng)充值活動(dòng)方案
- 寒假輔導(dǎo)學(xué)科活動(dòng)方案
- 家具建材聯(lián)盟活動(dòng)方案
- 小城鎮(zhèn)職場(chǎng)活動(dòng)方案
- 家具公司中秋活動(dòng)方案
- 家用空調(diào)營(yíng)銷活動(dòng)方案
- 室內(nèi)籃球活動(dòng)方案
- 醫(yī)療器械行業(yè)市場(chǎng)部人員崗位職責(zé)
- (中醫(yī)內(nèi)科)高級(jí)、副高級(jí)職稱考試模擬試題及答案
- 跌倒墜床原因分析預(yù)防措施
- 部編版小學(xué)道德與法治三年級(jí)下冊(cè)期末質(zhì)量檢測(cè)試卷【含答案】5套
- 弱電施工安全技術(shù)交底
- DB21T 3354-2020 遼寧省綠色建筑設(shè)計(jì)標(biāo)準(zhǔn)
- (完整版)重大危險(xiǎn)源清單及辨識(shí)表
- 安全生產(chǎn)知識(shí)應(yīng)知應(yīng)會(huì)
- 08S305-小型潛水泵選用及安裝圖集
- 體育器材采購(gòu)設(shè)備清單
- 二手車鑒定評(píng)估報(bào)告書最終
評(píng)論
0/150
提交評(píng)論