第四講vfp自由表(續(xù))課件_第1頁
第四講vfp自由表(續(xù))課件_第2頁
第四講vfp自由表(續(xù))課件_第3頁
第四講vfp自由表(續(xù))課件_第4頁
第四講vfp自由表(續(xù))課件_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第四講自由表(續(xù))主要內(nèi)容表的排序、索引和查尋表的計(jì)算、匯總多表間的基本操作1.排序與索引的概念文件的物理順序:數(shù)據(jù)在VFP表文件中存儲的順序。SORT(排序):重排表文件的物理順序,以便以希望的順序相繼訪問數(shù)據(jù)。INDEX(索引):建立一個(gè)包括一個(gè)或多個(gè)索引的分開文件,而表文件的物理順序保持不變。其中,只有一個(gè)單個(gè)索引(主索引)決定記錄訪問的主要順序。排序是改變表物理順序的過程,索引是排列其邏輯順序的過程。3.表的索引3.1索引的類型與建立索引文件的類型:.IDX的文件,即各索引文件只包含一個(gè)單個(gè)索引.CDX的文件,即復(fù)合索引文件,是在單個(gè)文件中包含多個(gè)索引。在一個(gè)復(fù)合索引文件中的各個(gè)索引叫做索引標(biāo)識。結(jié)構(gòu)復(fù)合索引文件,是一種為與活動表文件同名的文件,建立時(shí)只要設(shè)定Structural(選項(xiàng))即可。獨(dú)立復(fù)合索引文件,是一種與打開的表文件不同名的.CDX文件,建立是只要不設(shè)定Structural選項(xiàng)即可。使用索引文件,建議選擇.CDX文件并設(shè)定Structural,不但查索速度加快,而且便于維護(hù)。若建立暫時(shí)索引文件,可選.IDX文件。INDEX命令建立索引文件的命令:格式1(建立.IDX索引文件):INDEXON<關(guān)鍵字表達(dá)式>TO<文件名>[UNIQUE|CANDIDATE][COMPACT][ADDITIVE]格式2(建立.CDX索引文件):INDEXON<關(guān)鍵字表達(dá)式>TAG<標(biāo)識名>[OF<文件名>][UNIQUE][DESCENDING][ADDITIVE][FOR<條件>]功能:對當(dāng)前表根據(jù)關(guān)鍵字表達(dá)式的值從小到大排列,并存入TO后指定的索引文件名的文件或復(fù)合索引文件的一個(gè)標(biāo)識中。說明:關(guān)鍵字表達(dá)式中不能混淆其他類型的項(xiàng)。一般將非字符型字段轉(zhuǎn)換成字符型字段,然后用”+“或”-“進(jìn)行連接。例如:INDEXON姓名+STR(ACCNO)+DTOS(TDate)TOSKEY例4.18使用INDEX命令建立不同的文件

USEFfileEXCLUSIVE&&獨(dú)占狀態(tài)打開表

INDEXON姓名TAGSKEYOFX&&索引標(biāo)識加到指定的.CDX文件

INDEXON姓名TOSKEY&&.IDX文件被建立

INDEXON姓名TAGSKEY&&索引標(biāo)識加到結(jié)構(gòu).CDX文件VFP可以使用表設(shè)計(jì)器生成索引或者顯示窗口中的屬性按鈕,顯示工作區(qū)屬性生成索引。主要內(nèi)容表的排序、索引和查尋表的計(jì)算、匯總多表間的基本操作1.表的計(jì)算命令1.1計(jì)數(shù)命令CONUT格式:COUNT[<范圍>][FOR<條件>][WHILE<條件>][TO<內(nèi)存變量名>][NOOPTIMIZE]功能:統(tǒng)計(jì)當(dāng)前表文件中符合條件的記錄數(shù)。例4.24在Rfile表文件中,統(tǒng)計(jì)處工資大于12000的講師的記錄數(shù),存M1中。

USERfileCOUNTFOR職稱=“講師”.AND.工資>12000.00TOM1?M121.2求和命令SUM格式:SUM[<范圍>][數(shù)值<表達(dá)式>][TO<內(nèi)存變量名表>|TOARRAY<數(shù)組名>][FOR<條件>][WHILE<條件>][NOOPTIMIZE]功能:對當(dāng)前表中選中記錄的全部或指定的數(shù)值字段或由指定字段組成的數(shù)值表達(dá)式累加求和。例4.25求Ffile表文件中講師的平均工資

USEFfileSUMALL工資TOG1FOR職稱=“講師”

COUNTALLFOR職稱=“講師”TON?G1/N1.3求平均值命令A(yù)VERAGE格式:AVERAGE[<范圍>][<數(shù)值表達(dá)式>][TO<內(nèi)存變量名表>|TOARRAY<數(shù)組名>][FOR<條件>][WHILE<條件>][NOOPTIMIZE]功能:對當(dāng)前表中選中記錄的全部或部分?jǐn)?shù)值型字段及其組成的表達(dá)式求平均值并顯示,且可存入內(nèi)存變量名表或一維數(shù)組中。例4.26求Rfile表中講師的平均工資。

USERfileAVERAGEALL工資TON1FOR職稱=“講師”2.表的匯總命令實(shí)際運(yùn)用中,常常需要將表的數(shù)值字段進(jìn)行分類統(tǒng)計(jì),比如賓館的收銀表管理中需要按樓層對房費(fèi)、其他應(yīng)收費(fèi)和實(shí)際金額等字段匯總,且將匯總結(jié)果放到匯總表中。VFP提供了專門的匯總命令。格式:TOTALTO<文件名>ON<關(guān)鍵字>[FIELDS<字段名表>][<范圍>][FOR<條件>][WHILE<條件>][NOOPTIMIZE]功能:對當(dāng)前表中選中記錄的全部或部分?jǐn)?shù)值型字段按關(guān)鍵字值相同的記錄進(jìn)行匯總,并將其結(jié)果放入<文件名>指定的表文件中。說明:使用TOTAL命令前必須對當(dāng)前表按<關(guān)鍵字>進(jìn)行排序或者索引。例4.27對賓館收銀表SY,按樓層對其數(shù)值字段進(jìn)行匯總。

USESYINDEXON樓層TOSY1SETINDEXTOSY1LISTTOTALON樓層TONSUMUSENSUMLIST主要內(nèi)容表的排序、索引和查尋表的計(jì)算、匯總多表間的基本操作對數(shù)據(jù)的組織和處理不是簡單地將所有數(shù)據(jù)放在一個(gè)大的表中即可,而是為了避免數(shù)據(jù)的冗余,把大的表分為幾個(gè)相互間具有聯(lián)系的小的表。存在多對多關(guān)系、多對一關(guān)系及其他關(guān)系實(shí)現(xiàn)兩個(gè)表之間的數(shù)據(jù)操作,需要在兩個(gè)表之間建立關(guān)聯(lián)(兩個(gè)表的指針的邏輯關(guān)系)。在實(shí)際的表系統(tǒng)中常常要管理多個(gè)表,所以在對多重表的操作中使用關(guān)聯(lián)、連接、更新,設(shè)置和存儲表之間的臨時(shí)關(guān)系十分重要。1.關(guān)聯(lián)格式1:SETRELATION[TO<關(guān)鍵字表達(dá)式>|<數(shù)字表達(dá)式>INTO<別名>[ADDITIVE]]格式2:SETRELATION[TO<關(guān)鍵字表達(dá)式>|<數(shù)字表達(dá)式>INTO<別名>][,TO<關(guān)鍵字表達(dá)式>|<數(shù)字表達(dá)式>INTO<別名>]…ADDITIVE功能:把當(dāng)前工作區(qū)(主工作區(qū))中的表文件與<別名>所指定的輔工作區(qū)中的表文件通過<表達(dá)式>建立關(guān)聯(lián)。說明:命令中的<關(guān)鍵字表達(dá)式>其值必須是兩個(gè)表文件共有的字段,它是兩個(gè)表文件建立關(guān)系的條件。命令中若使用關(guān)鍵字表達(dá)式,則<別名>表文件必須在該關(guān)鍵字表達(dá)式上建立索引文件并打開;若使用數(shù)值表達(dá)式,則兩個(gè)表文件時(shí)按照記錄號相關(guān)聯(lián)的,這時(shí)<別名>表文件不用索引。例題4.29以記錄號建立關(guān)聯(lián)

SELE1USESTU1SELE2USESTU2SELE1SETRELATIONTORECNO()INTOBCHANGFIELDSB->出生日期FOR體育=90.00&&出生日期改76/06/06SELE2DISPLAY例題4.30以數(shù)值表達(dá)式建立關(guān)聯(lián)

SELE1USESTU1SELE2USESTU2INDEXON平均分TOPJSETINDEXTOPJSELE1SETRELATIONTO平均分INTOSTU2LIST姓名,B->姓名注意:如果STU2表中有兩條及以上的記錄的平均分相同,則兩個(gè)工作區(qū)中顯示的姓名內(nèi)容有可能不一致。謝謝

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論