freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第05章:查詢與視圖(參考版)

2025-08-04 17:48本頁(yè)面
  

【正文】 訪問(wèn)。 ? 視圖是存放在數(shù)據(jù)庫(kù)中,查看視圖須在數(shù)據(jù)庫(kù)中查看。 ALTER TABLE STUD ADD 獎(jiǎng)學(xué)金 N(3) Visual Foxpro 漳州師范學(xué)院計(jì)算中心 視圖 ? 視圖是在 本地或遠(yuǎn)程數(shù)據(jù) 表或其他視圖上導(dǎo)出的邏輯 虛擬表 ,它是用戶查看數(shù)據(jù)的窗口,用戶可通過(guò)它方便地實(shí)現(xiàn)對(duì)單表或多表數(shù)據(jù)的各種上查詢。 參數(shù) FieldType 是表示字段數(shù)據(jù)類型的單個(gè)字符。 ALTER 字段名 指定要修改的已有的字段名 。 表名 指定要修改其結(jié)構(gòu)的表名 。 ? 例 利用 UPDATESQL命令將 STAFFS表中“ 李紅 ” 的工資提高 50元 UPDATE STAFFS SET 工資 =工資 +50 WHERE 姓名 =“李紅 ” Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? 5. 創(chuàng)建臨時(shí)表 ? (1)基本格式 CREATE CURSOR 表名 (字段名 1類型 [(寬度 [,小數(shù)位數(shù) ])] [字段名 2類型 [(寬度 [,小數(shù)位數(shù) ])],… ] ? (2)功能 ? 創(chuàng)建一個(gè)給定每個(gè)字段的名稱、類型、寬度、小數(shù)位數(shù)等參數(shù)的臨時(shí)表。若要真正從表中刪除,還必須使用 PACK命令。 ? 例 利用 INSERTSQL命令向 STAFFS表追加一條新記錄,內(nèi)容: “ 101002”,“李紅 ” ,“女 ” ,{^1964123},.T.,“1985年畢業(yè)于南方大學(xué)財(cái)經(jīng)系 ” INSERT INTO STAFFS VALUE(“101002”,“李紅 ” ,“女 ” ,{^1964123},.T.,“1985年畢業(yè)于南方大學(xué)財(cái)經(jīng)系 ” ) Visual Foxpro 漳州師范學(xué)院計(jì)算中心 例 在表文件 STUD的末尾追加三條記錄 。 表達(dá)式表 :指定要追加的記錄各個(gè)字段的值 。 Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? 例 從 STUDENT 表中查出所有專業(yè)名稱 (不為空、不重復(fù) ),并將查詢結(jié)果保存在數(shù)組 ZY中。否則復(fù)蓋該文本文件。查詢結(jié)束后該表自動(dòng)作為當(dāng)前表打開??上褚话惚硪粯邮褂盟? 只讀,關(guān)閉時(shí)臨時(shí)表自動(dòng)刪除。若查詢結(jié)果只有一行,該數(shù)組可當(dāng)作一維數(shù)組使用。 ? INTO ARRAY 數(shù)組名 ? 將查詢結(jié)果存放到一個(gè)二維數(shù)組中。 ? SELECT 取自表 1的列表名 FROM 表名 1WHERE 表 1的關(guān)聯(lián)字段 IN ( SELECT 表 2 的關(guān)鍵字段 FROM 表名 2 [ WHERE 表 2的查詢條件 ] ) ? 說(shuō)明: (1) 命令過(guò)程首先是執(zhí)行子查詢,然后再執(zhí)行外查詢 (2) IN 是關(guān)系運(yùn)算符, 表 1中的關(guān)聯(lián)字段 的值必須與表 2查詢出的關(guān)聯(lián)字段的值中一個(gè)匹配。 ? SELECT ,姓名,課程號(hào),成績(jī) FROM STUDENT2 FULL JOIN GRADE2 ON = Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? 5. 多表間的聯(lián)接查詢 ? 例 根據(jù) STUDENT GRADE COURSE查詢有成績(jī)記錄的學(xué)生的學(xué)號(hào)、姓名、課程號(hào)、課程名、學(xué)分和成績(jī),并按學(xué)號(hào)從小到大排序輸出。 ? SELECT ,姓名,課程號(hào),成績(jī) FROM STUDENT2 RIGHT JOIN GRADE2 ON = Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? (FULL JOIN) ? 從相關(guān)的兩個(gè)表中選取所有的記錄,按聯(lián)接條件聯(lián)接成新記錄輸出,若表 1或表 2中不存在相關(guān)聯(lián)的記錄,則查詢輸出中相應(yīng)字段的值用 .。 ? 實(shí)現(xiàn)方法:用 LEFT JOIN 和 ON子句 SELECT 列表名 FROM 表名 1 LEFT JOIN 表名 2 ON 表名 1.關(guān)聯(lián)字段 =表名 2.關(guān)聯(lián)字段 Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? 例 根據(jù)表 STUDENT2和 GRADE2,查詢所有學(xué)生的學(xué)號(hào)、姓名、課程號(hào)和成績(jī),如果某個(gè)學(xué)生在 GRADE2表中沒(méi)有相應(yīng)的記錄,也要顯示出該學(xué)生的信息 ? SELECT ,姓名,課程號(hào),成績(jī) FROM STUDENT2 LEFT JOIN GRADE2 ON = Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? 3. 兩表間右聯(lián)接查詢 (RIGHT JOIN) ? 從 表 2中選取 所有的記錄,按聯(lián)接條件與表 1中相關(guān)聯(lián)的記錄成新記錄輸出,若表 1中不存在相關(guān)聯(lián)的記錄,則查詢輸出中相應(yīng)字段的值用 .。 (實(shí)現(xiàn)方法 1):使用 INNER JOIN 和 ON子句實(shí)現(xiàn) SELECT 列名表 FROM 表名 1 INNER JOIN 表名 2 ON 表名 1.關(guān)聯(lián)字段 =表名 2.關(guān)聯(lián)字段 Visual Foxpro 漳州師范學(xué)院計(jì)算中心 (實(shí)現(xiàn)方法 2) :在 WHERE 子句中實(shí)現(xiàn) SELECT 列表名 FROM 表名 1, 表名 2 WHERE 表名 1.關(guān)聯(lián)字段 =表名 2.關(guān)聯(lián)字段 ? 例 根據(jù)表 STUDENT2和 GRADE2,查詢有成績(jī)記錄的學(xué)生的學(xué)號(hào)、姓名、課程號(hào)和成績(jī) (方法 1) SELECT , , FROM STUDENT2 INNER JOIN GRADE2 ON STUDENT2.學(xué)號(hào) = Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? (方法 2) SELECT , , FROM STUDENT2, GRADE2 WHERE = ? 說(shuō)明: (1) 命令中 “ 學(xué)號(hào) ” 之前的 “ 表名 ” 及 “ .”不可少,因?yàn)?學(xué)號(hào) 字段同時(shí)存在于兩表中。 SELECT 專業(yè), SUM(獎(jiǎng)學(xué)金 ) AS 獎(jiǎng)學(xué)金總額 FROM STUDENT WHERE 獎(jiǎng)學(xué)金 =200 GROUP BY 專業(yè) Visual Foxpro 漳州師范學(xué)院計(jì)算中心 用查詢命令實(shí)現(xiàn)多表查詢 ? 若要同時(shí)從兩個(gè)或多個(gè)表中提取數(shù)據(jù),則需要將兩個(gè)或多個(gè)表的記錄通過(guò)相關(guān)的字段聯(lián)接起來(lái)進(jìn)行查詢。 ? SELECT 列名表 FROM 表名 [WHERE 條件 ] GROUP BY 分組依據(jù) [HAVING 條件 ] ? 說(shuō)明: 1. 分組依據(jù) 可按字段名、列序號(hào) 2. GROUP BY子句經(jīng)常和 HAVING子句聯(lián)用,后者給出分組結(jié)果再 進(jìn)行篩選的條件。 Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? 例 查詢 STUDENT表中的學(xué)生信息 ,并按獎(jiǎng)學(xué)金相同者按出生日期降序顯示。 ? 字段名 IN (值 1,值 2,…… 值 n) ? IN的否定運(yùn)算是 NOT IN ? 例 查詢顯示 STUDENT表中名為 “ 黃偉 ” 、“ 張三 ” 和 “ 王強(qiáng) ” 的信息。 SELECT 學(xué)號(hào),姓名 FROM STUDENT WHERE 專業(yè)= “ 金融 ” .AND. 性別 或: SELECT 學(xué)號(hào),姓名 FROM STUDENT WHERE 專業(yè)= “ 金融 ” AND 性別 =.T. Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? (3)模糊匹配查詢:在 WHERE子句中使用 LIKE運(yùn)算符,可對(duì)字符型數(shù)據(jù)進(jìn)行匹配類型的查詢。 (1)簡(jiǎn)單條件查詢:在 WHERE 后使用關(guān)系表達(dá)式說(shuō)明查詢數(shù)據(jù)滿足的簡(jiǎn)單條件。 ( 2) 字段名 關(guān)系運(yùn)算符 表達(dá)式 。 ? SELECT MAX(獎(jiǎng)學(xué)金) AS 最高獎(jiǎng)學(xué)金, MIN(獎(jiǎng)學(xué)金) AS 最低獎(jiǎng)學(xué)金, AVG(獎(jiǎng)學(xué)金) AS 平均獎(jiǎng)學(xué)金 FROM STUDENT Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? Select 子句中常用標(biāo)準(zhǔn)函數(shù) 函數(shù) 功能 MIN(<字段名>) 求指定字段的最小值 MAX(<字段名>) 求指定字段的最大值 AVG(<字段名>) 求指定字段的平均值 SUM(<字段名>) 求指定字段值的總和 COUNT(*) 或 COUNT(<字段名>) 統(tǒng)計(jì)記錄個(gè)數(shù) Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? 例 查詢顯示 STUDENT表中所有學(xué)生的學(xué)號(hào)、姓名和年齡 SELECT 學(xué)號(hào),姓名, YEAR(DATE( ))- YEAR(出生日期 ) AS 年齡 FROM STUDENT ? 例 顯示 grade(課程成績(jī)表)中的所有記錄,并將成績(jī)一項(xiàng)乘以 。 SELECT 學(xué)號(hào) ,姓名 ,專業(yè) FROM STUDENT TO SCREEN 說(shuō)明:查詢輸出在 VFP主窗口中 Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? ( 3)查詢指定表中所有記錄的統(tǒng)計(jì)值: 在 SELECT 后通過(guò)函數(shù)和表達(dá)式構(gòu)造統(tǒng)計(jì)式,通常還使用 AS子句為統(tǒng)計(jì)式取一個(gè)有含義的名稱作為查詢結(jié)果的列標(biāo)題。 SELECT * FROM STUDENT 說(shuō)明:查詢結(jié)果默認(rèn)輸出到 瀏覽窗口 中 Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? ( 2)查詢指定表中所有記錄的部分字段內(nèi)容:用<列表名>逐一列出所需字段要以 “ , ” 分隔。 Visual Foxpro 漳州師范學(xué)院計(jì)算中心 用 SELECT- SQL命令實(shí)現(xiàn)單表查詢 ? ? SELECT <列表名> FROM <表名> ? ( 1)查詢指定表中所有記錄的全部字段內(nèi)容:在SELECT 后用 “ * ” 表示全部字段,而無(wú)需列出所有字段名。如果數(shù)據(jù)庫(kù)不是當(dāng)前數(shù)據(jù)庫(kù),就必須指定包含表的數(shù)據(jù)庫(kù)名稱并加上感嘆號(hào) (!)分隔符。 例如 : SELECT top 3 學(xué)號(hào) ,姓名 ,專業(yè) FROM STUDENT orde by 學(xué)號(hào) SELECT top 60 percent 學(xué)號(hào) ,姓名 ,專業(yè) FROM STUDENT orde by 學(xué)號(hào) Visual Foxpro 漳州師范學(xué)院計(jì)算中心 FROM [數(shù)據(jù)庫(kù)名 !] 表名 [AS 本地名 ] 列出所有從中檢索數(shù)據(jù)的表 ,即數(shù)據(jù)源。 ?若包含 PERCENT 則記錄數(shù)進(jìn)行取整。 ?nExpr :選取 1 到 32767 個(gè)記錄。 TOP 子句必須與 ORDER BY 子句同時(shí)使用。即在查詢結(jié)果中內(nèi)容完全相同的記錄只能出現(xiàn)一次 [Alias.]Select_Item: 指定作為查詢結(jié)果的列內(nèi)容,可以是字段名、常量或表達(dá)式; Alias表示表名(或表別名),用 AS 列名 指定查詢結(jié)果中列的標(biāo)題 注意 每一個(gè) SELECT 子句只能使用一次 DISTINCT。默認(rèn)為 ALL。 Visual Foxpro 漳州師范學(xué)院計(jì)算中心 ? 3. 參數(shù)說(shuō)明 SELECT子句 :指定在查詢結(jié)果中包含的字段、常量和表達(dá)式??蓪?duì)查詢結(jié)果加以排序或分組統(tǒng)計(jì)。 本例中按前述步驟設(shè)置后,單擊系統(tǒng)菜單上的“運(yùn)行”按鈕運(yùn)行交叉表查詢,并將查詢結(jié)果保存到臨時(shí)表“查詢 1”中,然后再在瀏覽窗口中單擊 【 顯示 】 |【 瀏覽“查詢 1”】 ,結(jié)果如右表。 對(duì)話框中的按鈕含義如下: Visual Foxpro 漳州師范學(xué)院計(jì)算中心 運(yùn)行查詢 在完成了查詢的設(shè)計(jì)工作并指定了結(jié)果輸出去向后,可通過(guò)以下五種方式之一運(yùn)行查詢: ■在查詢?cè)O(shè)計(jì)器區(qū)域內(nèi)單擊右鍵,在彈出菜單中選擇“運(yùn)行查詢”; ■在“項(xiàng)目管理器”中選定查詢的名稱,然后選定“運(yùn)行”按鈕; ■在“查詢”菜單中選擇“運(yùn)行查詢”: ■在命令窗口中鍵入 DO 查詢名 .qpr。 選定一個(gè)去向,按一定的步驟設(shè)置一些屬性,然后單擊 【 確定 】 按鈕,系統(tǒng)就將按意圖放置查詢結(jié)果。多次查詢的結(jié)果可放在不同的表內(nèi)。查詢輸出目的可以是瀏覽窗口、臨時(shí)表、表、圖形、屏幕、報(bào)表、標(biāo)簽等?,F(xiàn)選中“交叉數(shù)據(jù)表”項(xiàng),如圖: 設(shè)置 Visual Foxpro 漳州師范學(xué)院計(jì)算中心 定向輸出查詢結(jié)果 查詢檢索的信息,可以輸出到不同的目的地,以用作不同的用途。 如,在本示例中,將前面已加入到“選定字段”中的 Student.學(xué)號(hào)字段移去,并按 、 Grade.課程成績(jī)的順序調(diào)整字段在“選定字段”列表框中的順序,然后在“雜項(xiàng)”選項(xiàng)卡中選中“交叉數(shù)據(jù)表”,同時(shí)將“分組依據(jù)”中的“ ”取消,其它設(shè)置不變。選中“交叉數(shù)據(jù)表”復(fù)選框表示將查詢的結(jié)果以交叉表的形式傳遞給其它報(bào)表或表。選中此項(xiàng),在查詢生成器的 SQL語(yǔ)句中會(huì)自動(dòng)加上限定詞 Distinct,表示去掉重復(fù)記錄。 單擊“雜項(xiàng)”選項(xiàng)卡,可以看到其間包括“無(wú)重復(fù)記錄”、“交叉數(shù)據(jù)表”、“全部”、“百分比”這四個(gè)復(fù)選框和一個(gè)微調(diào)按鈕。 運(yùn)行查詢后的結(jié)果 Visual Foxpro 漳州師范學(xué)院計(jì)算中心
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1