11VFP國二輔導(dǎo)-第2講查詢與視圖課件_第1頁
11VFP國二輔導(dǎo)-第2講查詢與視圖課件_第2頁
11VFP國二輔導(dǎo)-第2講查詢與視圖課件_第3頁
11VFP國二輔導(dǎo)-第2講查詢與視圖課件_第4頁
11VFP國二輔導(dǎo)-第2講查詢與視圖課件_第5頁
已閱讀5頁,還剩93頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1.利用永久表文件存放查詢結(jié)果(INTODBF|TABLE<表名>)【例】將男學(xué)生的信息存放到永久表ABC中。 SELECT*FROM學(xué)生WHERE性別="男"INTODBFABC等價(jià)于:SELECT*FROM學(xué)生WHERE性別="男"INTOTABLEABC

考點(diǎn)1查詢?nèi)ハ颉咀⒁狻空Z句執(zhí)行后,將在當(dāng)前目錄中生成ABC.DBF永久表,該表自動(dòng)打開,成為當(dāng)前文件。使用“顯示”菜單的“瀏覽”命令,可以看到表ABC.DBF的記錄。11.利用永久表文件存放查詢結(jié)果(INTODBF|TABLE2.利用臨時(shí)表文件存放查詢結(jié)果(INTOCURSOR<表名>)臨時(shí)表是一個(gè)只讀的.dbf文件,可以像一般的.dbf文件一樣使用。當(dāng)關(guān)閉查詢相關(guān)的表文件時(shí),該臨時(shí)表文件自動(dòng)刪除。

【例】將男學(xué)生的信息存放到臨時(shí)表ABC中。 SELECT*FROM學(xué)生WHERE性別=“男”;

INTOCURSORABC【注意】INTOCURSOR后的表文件名不能寫擴(kuò)展名.DBF如:INTOCURSORABC.DBF,會(huì)提示語法錯(cuò)誤。

22.利用臨時(shí)表文件存放查詢結(jié)果(INTOCURSOR<表名3.利用文本文件存放查詢結(jié)果(TOFILE<文本文件名>)【例】將男學(xué)生的信息存放到文本文件ABC中。SELECT*FROM學(xué)生WHERE性別="男"TOFILEABC

33.利用文本文件存放查詢結(jié)果(TOFILE<文本文件名>連接查詢練習(xí)81.3select單表存文本文件SELECT*FROM教師表;WHERE教師表.工資>4500;ORDERBY教師表.職工號;TOfileone4連接查詢練習(xí)81.3select單表存文本文件SELE4.利用數(shù)組存放查詢結(jié)果(INTOARRAY<數(shù)組名>)【例】查詢學(xué)生表中計(jì)算機(jī)專業(yè)學(xué)生的學(xué)號、姓名、專業(yè)和入學(xué)成績,將查詢結(jié)果存放在數(shù)組ABC中。 SELECT學(xué)號,姓名,專業(yè),入學(xué)成績FROM學(xué)生; WHERE專業(yè)="計(jì)算機(jī)"INTOARRAYABC該查詢執(zhí)行后,系統(tǒng)會(huì)自動(dòng)生成一個(gè)2行4列的數(shù)組ABC,

【注意】INTOARRAY后只寫數(shù)組名,不能寫數(shù)組的下標(biāo)。

Abc(1,1)Abc(2,1)Abc(1,2)54.利用數(shù)組存放查詢結(jié)果(INTOARRAY<數(shù)組名>)考點(diǎn)2普通聯(lián)接查詢Select學(xué)生.學(xué)號,姓名,成績

from學(xué)生,選課Where學(xué)生.學(xué)號=選課.學(xué)號And成績>90查詢結(jié)果有意義嗎?例:查詢學(xué)生的學(xué)號、姓名和成績信息。6考點(diǎn)2普通聯(lián)接查詢Select學(xué)生.學(xué)號,姓名,成績【例】查詢學(xué)生的學(xué)號、姓名和成績信息。簡單聯(lián)接查詢:SELECT學(xué)生.學(xué)號,姓名,成績;FROM學(xué)生,選課WHERE學(xué)生.學(xué)號=選課.學(xué)號內(nèi)連接查詢:SELECT學(xué)生.學(xué)號,姓名,成績;FROM學(xué)生

JOIN選課ON學(xué)生.學(xué)號=選課.學(xué)號

考點(diǎn)3內(nèi)聯(lián)接查詢7【例】查詢學(xué)生的學(xué)號、姓名和成績信息??键c(diǎn)3內(nèi)聯(lián)接【例】查詢學(xué)生的學(xué)號、姓名、課程名和成績信息。

WHERE學(xué)生.學(xué)號=選課.學(xué)號

AND

選課.課程號=課程.課程號SELECT

學(xué)生.學(xué)號,姓名,課程名,成績FROM學(xué)生,選課,課程;SELE學(xué)生.學(xué)號,姓名,課程名,成績FROM學(xué)生

JOIN選課JOIN

課程;ON選課.課程號=課程.課程號

ON學(xué)生.學(xué)號=選課.學(xué)號注意:多個(gè)表用“JOIN”語句聯(lián)接的順序要與聯(lián)接條件“ON”的順序相反。注意:篩選記錄條件必須寫在WHERE子句中考點(diǎn)4三個(gè)表聯(lián)接查詢8【例】查詢學(xué)生的學(xué)號、姓名、課程名和成績信息。WHERD學(xué)生表S(學(xué)號,姓名,性別,年齡)課程表C(課程號,課程名,學(xué)分)學(xué)生選課表SC(學(xué)號,課程號,成績)查詢學(xué)號、姓名、課程名和成績的SQL命令是____(07年4月)

A.SELECT學(xué)號,姓名,課程名,成績FROMS,SC,CWHERES.學(xué)號=SC.學(xué)號ANDSC.學(xué)號=C.學(xué)號B.SELECT學(xué)號,姓名,課程名,成績FROM(SJOINSCONS.學(xué)號=SC.學(xué)號)JOINCONSC.課程號=C.課程號C.SELECTS.學(xué)號,姓名,課程名,成績FROMSJOINSCJOINCONS.學(xué)號=SC.學(xué)號ONSC.課程號=C.課程號D.SELECTS.學(xué)號,姓名,課程名,成績FROMSJOINSCJOINCONSC.課程號=C.課程號ONS.學(xué)號=SC.學(xué)號9D學(xué)生表S(學(xué)號,姓名,性別,年齡)9【例】左聯(lián)接查詢學(xué)生的學(xué)號、姓名和成績的信息。SELECT學(xué)生.學(xué)號,姓名,成績;

FROM學(xué)生LEFTJOIN選課ON學(xué)生.學(xué)號=選課.學(xué)號

第一個(gè)表中不滿足聯(lián)接條件的記錄會(huì)出現(xiàn)在查詢結(jié)果中,由于三名學(xué)生沒有選課,因此相應(yīng)的成績?yōu)榭铡?/p>

考點(diǎn)5左聯(lián)接查詢內(nèi)連接記錄+左表不滿足條件的記錄10【例】左聯(lián)接查詢學(xué)生的學(xué)號、姓名和成績的信息。考點(diǎn)5【例】右聯(lián)接查詢學(xué)生的學(xué)號、課程名和成績的信息。

SELECT學(xué)號,課程名,成績;

FROM選課RIGHTJOIN課程ON選課.課程號=課程.課程號

最后一個(gè)表中不滿足聯(lián)接條件的記錄會(huì)出現(xiàn)在查詢結(jié)果中,由于有一門課程沒有被學(xué)生所選,因此相應(yīng)的學(xué)號和成績?yōu)榭铡?/p>

考點(diǎn)6右聯(lián)接查詢內(nèi)連接記錄+右表不滿足條件的記錄.11【例】右聯(lián)接查詢學(xué)生的學(xué)號、課程名和成績的信息??键c(diǎn)6【例】全聯(lián)接查詢學(xué)生的學(xué)號、姓名、課程名和成績信息。SELECT學(xué)生.學(xué)號,姓名,課程名,成績;FROM學(xué)生FULLJOIN選課FULLJOIN課程;ON選課.課程號=課程.課程號ON學(xué)生.學(xué)號=選課.學(xué)號兩個(gè)表(第一個(gè)表和最后一個(gè)表)中不滿足條件的記錄會(huì)出現(xiàn)在查詢結(jié)果中。即全聯(lián)接查詢的結(jié)果是左聯(lián)接查詢和右聯(lián)接查詢結(jié)果的并集。

考點(diǎn)7全聯(lián)接查詢12【例】全聯(lián)接查詢學(xué)生的學(xué)號、姓名、課程名和成績信息??伎键c(diǎn)8別名與自聯(lián)接查詢

在多表的聯(lián)接查詢中,經(jīng)常需要使用關(guān)系名(表名)作為前綴,為了使前綴簡化,SQL允許在FROM子句中為關(guān)系名(表名)定義別名,別名可以象關(guān)系名一樣作為前綴使用?!靖袷健?lt;關(guān)系名><別名>【例】定義別名,查詢學(xué)生的學(xué)號、姓名、課程名和成績。SELECTS.學(xué)號,姓名,課程名,成績FROM學(xué)生S,選課SC,課程C;WHERES.學(xué)號=SC.學(xué)號ANDSC.課程號=C.課程號13考點(diǎn)8別名與自聯(lián)接查詢在多表的聯(lián)接查詢中,經(jīng)常需要使用當(dāng)一個(gè)表自己與自己聯(lián)接時(shí),可以給表取兩個(gè)別名,這樣就可以像兩個(gè)不同的表一樣進(jìn)行聯(lián)接查詢了?!纠扛鶕?jù)下圖課程表,查詢所有課程的先行課信息。SELECTA.課程名,“的先行課是”,B.課程名;FROM課程表A,課程表B;WHEREA.先行課=B.課程號AB14當(dāng)一個(gè)表自己與自己聯(lián)接時(shí),可以給表取兩個(gè)別名,這樣就可以像兩連接查詢練習(xí)47.2select雙表連接SELECT公司名稱,訂單編號,金額,送貨方式;FROMcustomerJOINorderON;Customer.客戶編號=Order.客戶編號;ORDERBY公司名稱,訂單編號;INTOTABLEresults.dbf15連接查詢練習(xí)47.2select雙表連接SELECTSelect命令SELECTFROM表1[,表2]…[DISTINCT]字段表達(dá)式[,字段表達(dá)式AS虛擬字段名]…[ORDERBY字段[ASC|DESC]][WHERE條件][GROUPBY字段[HAVING條件]][INTOARRAY數(shù)組名][INTOCURSOR臨時(shí)表名][INTODBF|TABLE永久表名][TOFILE文本文件名[ADDITIVE]][TOP數(shù)值|數(shù)值PERCENT]16Select命令SELECT[DISTINCT]字段表達(dá)式嵌套查詢當(dāng)查詢的條件依賴于另一個(gè)查詢的結(jié)果時(shí),就要在查詢條件WHERE短語中嵌套一個(gè)子查詢。求解方法:先內(nèi)層查詢后外層查詢17嵌套查詢當(dāng)查詢的條件依賴于另一個(gè)查詢的結(jié)果時(shí),就要在查詢條件考點(diǎn)9帶有比較運(yùn)算符的子查詢(單值比較)=、!=、<>、>、>=、<、<=、(SELE專業(yè)FROM學(xué)生WHERE姓名="李小華")注意:子查詢的結(jié)果必須是一個(gè)值?!纠?】查詢與李小華同一個(gè)專業(yè)學(xué)生的學(xué)號、姓名和專業(yè)。SELECT學(xué)號,姓名,專業(yè)FROM學(xué)生;WHERE專業(yè)=李小華的專業(yè)如何查?18考點(diǎn)9帶有比較運(yùn)算符的子查詢(單值比較)(SELE專業(yè)【例2】查詢比英語專業(yè)平均入學(xué)成績高的學(xué)生信息。SELECT*FROM學(xué)生;WHERE入學(xué)成績>;英語專業(yè)的平均入學(xué)成績(SELECTAVG(入學(xué)成績)FROM學(xué)生WHERE專業(yè)=“英語”)19【例2】查詢比英語專業(yè)平均入學(xué)成績高的學(xué)生信息。SELECT07010001的成績SELECT學(xué)號,課程號,成績FROM選課WHERE成績>=【例3】查詢成績大于等于學(xué)號為“07010001”的所有科成績的學(xué)生學(xué)號,課程號,成績。(SELECT成績FROM選課WHERE學(xué)號="07010001")ALLANY注意:子查詢的結(jié)果可以是一個(gè)字段的多個(gè)值??键c(diǎn)10使用量詞的子查詢(多值比較)ALL、ANY、SOME>=all大于等于所有(大于等于最大值)<=all小于等于所有(小于等于最小值)>=any

大于等于某一個(gè)

(大于等于最小值)<=any

小于等于某一個(gè)

(小于等于最大值)2007010001的成績SELECT學(xué)號,課程號,成績FR【例4】查詢選修了C001課程的學(xué)生學(xué)號和姓名、性別。select學(xué)號,姓名,性別;from學(xué)生;Where學(xué)號在選修了C001課學(xué)生的學(xué)號集合in(Select學(xué)號from選課Where課程號="C001")考點(diǎn)11使用謂詞的子查詢(多值比較)IN和NOTINselect學(xué)生.學(xué)號,姓名,性別;from學(xué)生,選課;Where學(xué)生.學(xué)號=選課.學(xué)號and課程號="C001"21【例4】查詢選修了C001課程的學(xué)生in(Select學(xué)SELECT學(xué)號FROM選課;WHERE課程號=“C001”【例5】查詢同時(shí)選修了“C001”和“C004”課程的學(xué)生的學(xué)號。INAND學(xué)號(SELECT學(xué)號FROM選課WHERE課程號="C004")22SELECT學(xué)號FROM選課;【例5】查詢同時(shí)選修了“SELECT*FROM學(xué)生WHERE注意:存在謂詞[NOT]EXISTS只判斷子查詢中是否有查詢結(jié)果,在謂詞[NOT]EXISTS前沒有相應(yīng)的字段名【例6】查詢沒有選修任何一門課的學(xué)生信息。(SELECT*FROM選課WHERE學(xué)號=學(xué)生.學(xué)號)NOTEXISTS考點(diǎn)12使用謂詞的子查詢(多值比較)EXISTS和NOTEXISTS23SELECT*FROM學(xué)生WHERE注意:存在謂詞[考點(diǎn)13集合的并運(yùn)算【格式】<SELECT語句1>UNION

<SELECT語句2>【說明】UNION語句默認(rèn)組合結(jié)果中排除重復(fù)記錄?!纠坎樵冞x修了003或005這兩門課程的學(xué)生信息。SELECT*FROM選課WHERE課程號="003";UNION;SELECT*FROM選課WHERE課程號="005"

24考點(diǎn)13集合的并運(yùn)算【格式】<SELECT語句1>UNI(14)給student表增加一個(gè)“平均戍績”字段(數(shù)值型,總寬度6,2位小數(shù))的SQL命令是A)ALTERTABLEstudentADD平均成績N(6,2)B)ALTERTABLEstudentADD平均成績D(6,2)C)ALTERTABLEstudentADD平均成績E(6,2)D)ALTERTABLEstudentADD平均成績Y(6,2)A2011.3國二考試真題

25(14)給student表增加一個(gè)“平均戍績”字段(數(shù)值型,(15)在VisualFoxPro中,執(zhí)行SQL的DELETE命令和傳統(tǒng)的FoxProDELETE命令都可以刪除數(shù)據(jù)庫表中的記錄,下面正確的描述是A)SQL的DELETE命令刪除數(shù)據(jù)庫表中記錄之前,不需要先用USE命令打開表B)SQL的DELETE命令和傳統(tǒng)的FoxProDELETE命令刪除數(shù)據(jù)庫表中的記錄之前,都需要先用命令USE打開表C)SQL的DELETE命令可以物理地刪除數(shù)據(jù)庫表中的記錄,而傳統(tǒng)的FoxProDELETE命令只能邏輯刪除數(shù)據(jù)庫表中的記錄D)傳統(tǒng)的FoxProDELETE命令還可以刪除其它工作區(qū)中打開的數(shù)據(jù)庫表中記錄A26(15)在VisualFoxPro中,執(zhí)行SQL的DELE(18)刪除student表的“平均成績”字段的正確SQL命令是A)DELETETABLEstudentDELETECOLUMN平均成績B)ALTERTABLEstudentDELETECOLUMN平均成績C)ALTERTABLEstudentDROPCOLUMN平均成績D)DELETETABLEstudentDROPCOLUMN平均成績C27(18)刪除student表的“平均成績”字段的正確SQL命(20)從student表刪除年齡大于30的記錄的正確SQL命令是A)DELETEFOR年齡>30B)DELETEFROMstudentWHERE年齡>30C)DELETEstudentFOR年齡>30D)DELETEstudentWHERE年齡>30B28(20)從student表刪除年齡大于30的記錄的正確SQL(24)向student表插入一條新記錄的正確SQL語句是A)APPENDINTOstudentVALUES(’0401’,’王芳’,’女’,18)B)APPENDstudentVALUES(’0401’,’王芳’,’女’,18)C)INSERTINTOstudentVALUES(’0401’,’王芳’,’女’,18)D)INSERTstudentVALUES(’0401’,’王芳’,’女’,18)C29(24)向student表插入一條新記錄的正確SQL語句是(28)消除SQLSELECT查詢結(jié)果中的重復(fù)記錄,可采取的方法是A)通過指定主關(guān)鍵字B)通過指定惟一索引C)使用DISTINCT短語D)使用UNIQUE短語C30(28)消除SQLSELECT查詢結(jié)果中的重復(fù)記錄,可采取第(31)-(35)題使用如下三個(gè)數(shù)據(jù)庫表:學(xué)生表:student(學(xué)號,姓名,性別,出生日期,院系)課程表:course(課程號,課程名,學(xué)時(shí))選課成績表:score(學(xué)號,課程號,成績)其中出生日期的數(shù)據(jù)類型為日期型,學(xué)時(shí)和成績?yōu)閿?shù)值型,其它均為字符型。31第(31)-(35)題使用如下三個(gè)數(shù)據(jù)庫表:31(31)查詢“計(jì)算機(jī)系”學(xué)生的學(xué)號、姓名、學(xué)生所選課程的課程名和成績,正確的是A)SELECTs.學(xué)號,姓名,課程名,成績FROMstudents,scoresc,coursec;WHEREs.學(xué)號=sc.學(xué)號,sc.課程號=c.課程號,院系=’計(jì)算機(jī)系’B)SELECT學(xué)號,姓名,課程名,成績FROMstudents,scoresc,coursec;WHEREs.學(xué)號=sc.學(xué)號ANDsc.課程號=c.課程號AND院系=’計(jì)算機(jī)系’C)SELECTs.學(xué)號,姓名,課程名,成績;FROM(studentsJOINscorescONs.學(xué)號=sc.學(xué)號);JOINcoursecONsc.課程號=c.課程號;WHERE院系=’計(jì)算機(jī)系’D)SELECT學(xué)號,姓名,課程名,成績;FROM(studentsJOINscorescONs.學(xué)號=sc.學(xué)號);JOINcoursecONsc.課程號=c.課程號;WHERE院系=’計(jì)算機(jī)系’C32(31)查詢“計(jì)算機(jī)系”學(xué)生的學(xué)號、姓名、學(xué)生所選課程的課程32)查詢所修課程成績都大于等于85分的學(xué)生的學(xué)號和姓名,正確的命令是A)SELECT學(xué)號,姓名FROMstudentsWHERENOTEXISTS;(SELECT*FROMscorescWHEREsc.學(xué)號=s.學(xué)號AND成績<85)B)SELECT學(xué)號,姓名FROMstudentsWHERENOTEXISTS;(SELECT*FROMscorescWHEREsc.學(xué)號=s.學(xué)號AND成績>=85)C)SELECT學(xué)號,姓名FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號AND成績>=85D)SELECT學(xué)號,姓名FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號ANDALL成績>=85A3332)查詢所修課程成績都大于等于85分的學(xué)生的學(xué)號和姓名,正(33)查詢選修課程在5門以上(含5門)的學(xué)生學(xué)號、姓名和平均成績,并按平均成績降序排序,正確的命令是A)SELECTs.學(xué)號,姓名,平均成績FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號;GROUPBYs.學(xué)號HAVINGCOUNT(*)>=5ORDERBY平均成績DESCB)SELECT學(xué)號,姓名,AVG(成績)FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號ANDCOUNT(*)>=5;GROUPBY學(xué)號ORDERBY3DESCC)SELECTs.學(xué)號,姓名,AVG(成績)平均成績FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號ANDCOUNT(*)>=5;GROUPBYs.學(xué)號ORDERBY平均成績DESCD)SELECTs.學(xué)號,姓名,AVG(成績)平均成績FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號;GROUPBYs.學(xué)號HAVINGCOUNT(*)>=5;ORDERBY3DESCD34(33)查詢選修課程在5門以上(含5門)的學(xué)生學(xué)號、姓名和平(34)查詢同時(shí)選修課程號為C1和C5課程的學(xué)生的學(xué)號,正確的命令是A)SELECT學(xué)號FROMscorescWHERE課程號=’C1’AND學(xué)號IN;(SELECT學(xué)號FROMscorescWHERE課程號=’C5’)B)SELECT學(xué)號FROMscorescWHERE課程號=’C1’AND學(xué)號=;(SELECT學(xué)號FROMscorescWHERE課程號=’C5’}C)SELECT學(xué)號FROMscorescWHERE課程號=’C1’AND課程號=’C5’D)SELECT學(xué)號FROMscorescWHERE課程號=’C1’OR’C5’A35(34)查詢同時(shí)選修課程號為C1和C5課程的學(xué)生的學(xué)號,正確(35)刪除學(xué)號為“20091001”且課程號為“C1”的選課記錄,正確命令是A)DELETEFROMscoreWHERE課程號=’C1’;AND學(xué)號=’20091001’B)DELETEFROMscoreWHERE課程號=’C1’;OR學(xué)號=’20091001’C)DELETEFORMscoreWHERE課程號=’C1’;AND學(xué)號=’20091001’D)DELETEscoreWHERE課程號=’C1’;AND學(xué)號=’20091001’A36(35)刪除學(xué)號為“20091001”且課程號為“C1”的選(9)SQL語句“SELECTTOP10PERCENT*FROM訂單ORDERBY金額DESC”的查詢結(jié)果是訂單中金額【9】的10%的訂單信息。(11)使用SQL的CREATETABLE語句建立數(shù)據(jù)庫表時(shí),為了說明主關(guān)鍵字應(yīng)該使用關(guān)鍵詞【11】KEY。9.最高11.primary37(9)SQL語句“SELECTTOP10PERCENT

查詢與視圖38

查詢與視圖38查詢的概念“查詢”與直接使用SELECT語句查詢的區(qū)別:“查詢”:是一個(gè)名詞,指以.qpr為擴(kuò)展名的文本文件,存放SELECT語句。直接使用SELECT語句查詢:是一個(gè)動(dòng)詞,指從數(shù)據(jù)表中找出滿足條件的記錄。39查詢的概念“查詢”與直接使用SELECT語句“查詢設(shè)計(jì)器”的設(shè)計(jì)窗口查詢結(jié)果中的字段,對應(yīng)于SELECT短語數(shù)據(jù)表或視圖之間的聯(lián)接關(guān)系,對應(yīng)于JOINON短語

查詢條件,對應(yīng)于WHERE短語查詢結(jié)果記錄的排列順序,對應(yīng)于ORDERBY短語分組,對應(yīng)于GROUPBY短語和HAVING短語顯示重復(fù)記錄顯示前面的記錄,對應(yīng)于DISTINCT短語和TOP短語40“查詢設(shè)計(jì)器”的設(shè)計(jì)窗口查詢結(jié)果中的字段,對應(yīng)于SELECT利用設(shè)計(jì)器創(chuàng)建查詢

進(jìn)入“查詢設(shè)計(jì)器”窗口常用以下方法:(1)文件→新建→查詢;(2)命令:CREATQUERY。例:二9.1三個(gè)表的選擇順序:cus---cbc---comm41利用設(shè)計(jì)器創(chuàng)建查詢進(jìn)入“查詢設(shè)計(jì)器”窗口常用以下方法:例運(yùn)行查詢選擇“查詢→運(yùn)行查詢”命令:在命令窗口中鍵入:DO<查詢文件.qpr>;.qpr不能省略42運(yùn)行查詢選擇“查詢→運(yùn)行查詢”命令:.qpr不能省略42視圖視圖是操作表的一種手段,通過視圖可以查詢表,也可以更新表。視圖的數(shù)據(jù)取自數(shù)據(jù)庫表。視圖不作為獨(dú)立的文件存儲(chǔ),而是存放在定義它的數(shù)據(jù)庫中,當(dāng)數(shù)據(jù)庫打開時(shí)就可以使用視圖了,當(dāng)產(chǎn)生視圖的表被刪除,相應(yīng)的視圖中的數(shù)據(jù)將消失。視圖分為本地視圖和遠(yuǎn)程視圖。

43視圖視圖是操作表的一種手段,通過視圖可以查詢表,1.使用命令:Creatview<視圖名>as<select查詢語句>2.用視圖設(shè)計(jì)器通過“新建對話框”打開視圖設(shè)計(jì)器先打開數(shù)據(jù)庫二、刪除視圖:DeleteView〈視圖名〉DropView〈視圖名〉一、創(chuàng)建本地視圖441.使用命令:2.用視圖設(shè)計(jì)器通過“新建對話框”打開視圖設(shè)計(jì)視圖設(shè)計(jì)器和查詢設(shè)計(jì)器的界面主要不同之處:視圖設(shè)計(jì)器的工具欄中沒有“查詢?nèi)ハ颉卑粹o;視圖設(shè)計(jì)器的“字段”選項(xiàng)卡中增加了“屬性”按鈕視圖設(shè)計(jì)器增加了“更新條件”選項(xiàng)卡,用于設(shè)定數(shù)據(jù)更新的條件。

45視圖設(shè)計(jì)器和查詢設(shè)計(jì)器的界面主要不同之處:45查詢與視圖的區(qū)別功能不同:視圖可以更新記錄值并將更新的記錄返回源表,而查詢文件中的記錄數(shù)據(jù)不能被修改。從屬不同:視圖是一張?zhí)摂M表,不是一個(gè)獨(dú)立的文件,屬于某個(gè)數(shù)據(jù)庫;查詢是一個(gè)獨(dú)立的文件,不從屬于任何數(shù)據(jù)庫。輸出去向不同:視圖只能通過窗口瀏覽和更新,而查詢有多種輸出去向。使用方式不同:視圖只有所屬的數(shù)據(jù)庫被打開時(shí),才能使用。而使用查詢文件時(shí)不必打開數(shù)據(jù)庫。訪問范圍不同:視圖可以訪問本地?cái)?shù)據(jù)源和遠(yuǎn)程數(shù)據(jù)源,而查詢只能訪問本地?cái)?shù)據(jù)源。46查詢與視圖的區(qū)別功能不同:視圖可以更新記錄值并將更新的記錄1.在VisualFoxPro中,關(guān)于查詢和視圖的正確描述是A)查詢是一個(gè)預(yù)先定義好的SQLSELECT語句文件B)視圖是一個(gè)預(yù)先定義好的SQLSELECT語句文件C)查詢和視圖都是同一種文件,只是名稱不同D)查詢和視圖都是一個(gè)存儲(chǔ)數(shù)據(jù)的表2.在VisualFoxPro中,以下關(guān)于視圖描述中錯(cuò)誤的是A)通過視圖可以對表進(jìn)行查詢B)通過視圖可以對表進(jìn)行更新C)視圖是一個(gè)虛表D)視圖就是一種查詢3.在VisualFoxPro中,要運(yùn)行查詢文件query1.qpr,可以使用命令

A)DOquery1 B)DOquery1.qpr

C)DOQUERYquery1 D)RUNquery1471.在VisualFoxPro中,關(guān)于查詢和視圖的正確描述是(19)在VisualFoxPro中,關(guān)于視圖的正確描述是A)視圖也稱作窗口B)視圖是一個(gè)預(yù)先定義好的SQLSELECT語句文件C)視圖是一種用SQLSELECT語句定義的虛擬表D)視圖是一個(gè)存儲(chǔ)數(shù)據(jù)的特殊表C(8)在VisualFoxPro中假設(shè)有查詢文件queryl.qpr,要執(zhí)行該文件應(yīng)使用命令【8】。

Doquery1.qpr48(19)在VisualFoxPro中,關(guān)于視圖的正確描述是例二52.21.創(chuàng)建數(shù)據(jù)庫,添加表。2.打開視圖設(shè)計(jì)器,添加表,選擇字段。3.篩選條件:字段名條件實(shí)例邏輯chengji.數(shù)學(xué)<60orchengji.英語<60orchengji.信息技術(shù)<604.排序依據(jù):xuesheng.學(xué)號降序5.保存視圖view1。6.利用查詢設(shè)計(jì)器對視圖view1創(chuàng)建查詢,查詢?nèi)ハ驗(yàn)楸韙able2。49例二52.21.創(chuàng)建數(shù)據(jù)庫,添加表。491.利用永久表文件存放查詢結(jié)果(INTODBF|TABLE<表名>)【例】將男學(xué)生的信息存放到永久表ABC中。 SELECT*FROM學(xué)生WHERE性別="男"INTODBFABC等價(jià)于:SELECT*FROM學(xué)生WHERE性別="男"INTOTABLEABC

考點(diǎn)1查詢?nèi)ハ颉咀⒁狻空Z句執(zhí)行后,將在當(dāng)前目錄中生成ABC.DBF永久表,該表自動(dòng)打開,成為當(dāng)前文件。使用“顯示”菜單的“瀏覽”命令,可以看到表ABC.DBF的記錄。501.利用永久表文件存放查詢結(jié)果(INTODBF|TABLE2.利用臨時(shí)表文件存放查詢結(jié)果(INTOCURSOR<表名>)臨時(shí)表是一個(gè)只讀的.dbf文件,可以像一般的.dbf文件一樣使用。當(dāng)關(guān)閉查詢相關(guān)的表文件時(shí),該臨時(shí)表文件自動(dòng)刪除。

【例】將男學(xué)生的信息存放到臨時(shí)表ABC中。 SELECT*FROM學(xué)生WHERE性別=“男”;

INTOCURSORABC【注意】INTOCURSOR后的表文件名不能寫擴(kuò)展名.DBF如:INTOCURSORABC.DBF,會(huì)提示語法錯(cuò)誤。

512.利用臨時(shí)表文件存放查詢結(jié)果(INTOCURSOR<表名3.利用文本文件存放查詢結(jié)果(TOFILE<文本文件名>)【例】將男學(xué)生的信息存放到文本文件ABC中。SELECT*FROM學(xué)生WHERE性別="男"TOFILEABC

523.利用文本文件存放查詢結(jié)果(TOFILE<文本文件名>連接查詢練習(xí)81.3select單表存文本文件SELECT*FROM教師表;WHERE教師表.工資>4500;ORDERBY教師表.職工號;TOfileone53連接查詢練習(xí)81.3select單表存文本文件SELE4.利用數(shù)組存放查詢結(jié)果(INTOARRAY<數(shù)組名>)【例】查詢學(xué)生表中計(jì)算機(jī)專業(yè)學(xué)生的學(xué)號、姓名、專業(yè)和入學(xué)成績,將查詢結(jié)果存放在數(shù)組ABC中。 SELECT學(xué)號,姓名,專業(yè),入學(xué)成績FROM學(xué)生; WHERE專業(yè)="計(jì)算機(jī)"INTOARRAYABC該查詢執(zhí)行后,系統(tǒng)會(huì)自動(dòng)生成一個(gè)2行4列的數(shù)組ABC,

【注意】INTOARRAY后只寫數(shù)組名,不能寫數(shù)組的下標(biāo)。

Abc(1,1)Abc(2,1)Abc(1,2)544.利用數(shù)組存放查詢結(jié)果(INTOARRAY<數(shù)組名>)考點(diǎn)2普通聯(lián)接查詢Select學(xué)生.學(xué)號,姓名,成績

from學(xué)生,選課Where學(xué)生.學(xué)號=選課.學(xué)號And成績>90查詢結(jié)果有意義嗎?例:查詢學(xué)生的學(xué)號、姓名和成績信息。55考點(diǎn)2普通聯(lián)接查詢Select學(xué)生.學(xué)號,姓名,成績【例】查詢學(xué)生的學(xué)號、姓名和成績信息。簡單聯(lián)接查詢:SELECT學(xué)生.學(xué)號,姓名,成績;FROM學(xué)生,選課WHERE學(xué)生.學(xué)號=選課.學(xué)號內(nèi)連接查詢:SELECT學(xué)生.學(xué)號,姓名,成績;FROM學(xué)生

JOIN選課ON學(xué)生.學(xué)號=選課.學(xué)號

考點(diǎn)3內(nèi)聯(lián)接查詢56【例】查詢學(xué)生的學(xué)號、姓名和成績信息??键c(diǎn)3內(nèi)聯(lián)接【例】查詢學(xué)生的學(xué)號、姓名、課程名和成績信息。

WHERE學(xué)生.學(xué)號=選課.學(xué)號

AND

選課.課程號=課程.課程號SELECT

學(xué)生.學(xué)號,姓名,課程名,成績FROM學(xué)生,選課,課程;SELE學(xué)生.學(xué)號,姓名,課程名,成績FROM學(xué)生

JOIN選課JOIN

課程;ON選課.課程號=課程.課程號

ON學(xué)生.學(xué)號=選課.學(xué)號注意:多個(gè)表用“JOIN”語句聯(lián)接的順序要與聯(lián)接條件“ON”的順序相反。注意:篩選記錄條件必須寫在WHERE子句中考點(diǎn)4三個(gè)表聯(lián)接查詢57【例】查詢學(xué)生的學(xué)號、姓名、課程名和成績信息。WHERD學(xué)生表S(學(xué)號,姓名,性別,年齡)課程表C(課程號,課程名,學(xué)分)學(xué)生選課表SC(學(xué)號,課程號,成績)查詢學(xué)號、姓名、課程名和成績的SQL命令是____(07年4月)

A.SELECT學(xué)號,姓名,課程名,成績FROMS,SC,CWHERES.學(xué)號=SC.學(xué)號ANDSC.學(xué)號=C.學(xué)號B.SELECT學(xué)號,姓名,課程名,成績FROM(SJOINSCONS.學(xué)號=SC.學(xué)號)JOINCONSC.課程號=C.課程號C.SELECTS.學(xué)號,姓名,課程名,成績FROMSJOINSCJOINCONS.學(xué)號=SC.學(xué)號ONSC.課程號=C.課程號D.SELECTS.學(xué)號,姓名,課程名,成績FROMSJOINSCJOINCONSC.課程號=C.課程號ONS.學(xué)號=SC.學(xué)號58D學(xué)生表S(學(xué)號,姓名,性別,年齡)9【例】左聯(lián)接查詢學(xué)生的學(xué)號、姓名和成績的信息。SELECT學(xué)生.學(xué)號,姓名,成績;

FROM學(xué)生LEFTJOIN選課ON學(xué)生.學(xué)號=選課.學(xué)號

第一個(gè)表中不滿足聯(lián)接條件的記錄會(huì)出現(xiàn)在查詢結(jié)果中,由于三名學(xué)生沒有選課,因此相應(yīng)的成績?yōu)榭铡?/p>

考點(diǎn)5左聯(lián)接查詢內(nèi)連接記錄+左表不滿足條件的記錄59【例】左聯(lián)接查詢學(xué)生的學(xué)號、姓名和成績的信息??键c(diǎn)5【例】右聯(lián)接查詢學(xué)生的學(xué)號、課程名和成績的信息。

SELECT學(xué)號,課程名,成績;

FROM選課RIGHTJOIN課程ON選課.課程號=課程.課程號

最后一個(gè)表中不滿足聯(lián)接條件的記錄會(huì)出現(xiàn)在查詢結(jié)果中,由于有一門課程沒有被學(xué)生所選,因此相應(yīng)的學(xué)號和成績?yōu)榭铡?/p>

考點(diǎn)6右聯(lián)接查詢內(nèi)連接記錄+右表不滿足條件的記錄.60【例】右聯(lián)接查詢學(xué)生的學(xué)號、課程名和成績的信息??键c(diǎn)6【例】全聯(lián)接查詢學(xué)生的學(xué)號、姓名、課程名和成績信息。SELECT學(xué)生.學(xué)號,姓名,課程名,成績;FROM學(xué)生FULLJOIN選課FULLJOIN課程;ON選課.課程號=課程.課程號ON學(xué)生.學(xué)號=選課.學(xué)號兩個(gè)表(第一個(gè)表和最后一個(gè)表)中不滿足條件的記錄會(huì)出現(xiàn)在查詢結(jié)果中。即全聯(lián)接查詢的結(jié)果是左聯(lián)接查詢和右聯(lián)接查詢結(jié)果的并集。

考點(diǎn)7全聯(lián)接查詢61【例】全聯(lián)接查詢學(xué)生的學(xué)號、姓名、課程名和成績信息??伎键c(diǎn)8別名與自聯(lián)接查詢

在多表的聯(lián)接查詢中,經(jīng)常需要使用關(guān)系名(表名)作為前綴,為了使前綴簡化,SQL允許在FROM子句中為關(guān)系名(表名)定義別名,別名可以象關(guān)系名一樣作為前綴使用?!靖袷健?lt;關(guān)系名><別名>【例】定義別名,查詢學(xué)生的學(xué)號、姓名、課程名和成績。SELECTS.學(xué)號,姓名,課程名,成績FROM學(xué)生S,選課SC,課程C;WHERES.學(xué)號=SC.學(xué)號ANDSC.課程號=C.課程號62考點(diǎn)8別名與自聯(lián)接查詢在多表的聯(lián)接查詢中,經(jīng)常需要使用當(dāng)一個(gè)表自己與自己聯(lián)接時(shí),可以給表取兩個(gè)別名,這樣就可以像兩個(gè)不同的表一樣進(jìn)行聯(lián)接查詢了?!纠扛鶕?jù)下圖課程表,查詢所有課程的先行課信息。SELECTA.課程名,“的先行課是”,B.課程名;FROM課程表A,課程表B;WHEREA.先行課=B.課程號AB63當(dāng)一個(gè)表自己與自己聯(lián)接時(shí),可以給表取兩個(gè)別名,這樣就可以像兩連接查詢練習(xí)47.2select雙表連接SELECT公司名稱,訂單編號,金額,送貨方式;FROMcustomerJOINorderON;Customer.客戶編號=Order.客戶編號;ORDERBY公司名稱,訂單編號;INTOTABLEresults.dbf64連接查詢練習(xí)47.2select雙表連接SELECTSelect命令SELECTFROM表1[,表2]…[DISTINCT]字段表達(dá)式[,字段表達(dá)式AS虛擬字段名]…[ORDERBY字段[ASC|DESC]][WHERE條件][GROUPBY字段[HAVING條件]][INTOARRAY數(shù)組名][INTOCURSOR臨時(shí)表名][INTODBF|TABLE永久表名][TOFILE文本文件名[ADDITIVE]][TOP數(shù)值|數(shù)值PERCENT]65Select命令SELECT[DISTINCT]字段表達(dá)式嵌套查詢當(dāng)查詢的條件依賴于另一個(gè)查詢的結(jié)果時(shí),就要在查詢條件WHERE短語中嵌套一個(gè)子查詢。求解方法:先內(nèi)層查詢后外層查詢66嵌套查詢當(dāng)查詢的條件依賴于另一個(gè)查詢的結(jié)果時(shí),就要在查詢條件考點(diǎn)9帶有比較運(yùn)算符的子查詢(單值比較)=、!=、<>、>、>=、<、<=、(SELE專業(yè)FROM學(xué)生WHERE姓名="李小華")注意:子查詢的結(jié)果必須是一個(gè)值。【例1】查詢與李小華同一個(gè)專業(yè)學(xué)生的學(xué)號、姓名和專業(yè)。SELECT學(xué)號,姓名,專業(yè)FROM學(xué)生;WHERE專業(yè)=李小華的專業(yè)如何查?67考點(diǎn)9帶有比較運(yùn)算符的子查詢(單值比較)(SELE專業(yè)【例2】查詢比英語專業(yè)平均入學(xué)成績高的學(xué)生信息。SELECT*FROM學(xué)生;WHERE入學(xué)成績>;英語專業(yè)的平均入學(xué)成績(SELECTAVG(入學(xué)成績)FROM學(xué)生WHERE專業(yè)=“英語”)68【例2】查詢比英語專業(yè)平均入學(xué)成績高的學(xué)生信息。SELECT07010001的成績SELECT學(xué)號,課程號,成績FROM選課WHERE成績>=【例3】查詢成績大于等于學(xué)號為“07010001”的所有科成績的學(xué)生學(xué)號,課程號,成績。(SELECT成績FROM選課WHERE學(xué)號="07010001")ALLANY注意:子查詢的結(jié)果可以是一個(gè)字段的多個(gè)值??键c(diǎn)10使用量詞的子查詢(多值比較)ALL、ANY、SOME>=all大于等于所有(大于等于最大值)<=all小于等于所有(小于等于最小值)>=any

大于等于某一個(gè)

(大于等于最小值)<=any

小于等于某一個(gè)

(小于等于最大值)6907010001的成績SELECT學(xué)號,課程號,成績FR【例4】查詢選修了C001課程的學(xué)生學(xué)號和姓名、性別。select學(xué)號,姓名,性別;from學(xué)生;Where學(xué)號在選修了C001課學(xué)生的學(xué)號集合in(Select學(xué)號from選課Where課程號="C001")考點(diǎn)11使用謂詞的子查詢(多值比較)IN和NOTINselect學(xué)生.學(xué)號,姓名,性別;from學(xué)生,選課;Where學(xué)生.學(xué)號=選課.學(xué)號and課程號="C001"70【例4】查詢選修了C001課程的學(xué)生in(Select學(xué)SELECT學(xué)號FROM選課;WHERE課程號=“C001”【例5】查詢同時(shí)選修了“C001”和“C004”課程的學(xué)生的學(xué)號。INAND學(xué)號(SELECT學(xué)號FROM選課WHERE課程號="C004")71SELECT學(xué)號FROM選課;【例5】查詢同時(shí)選修了“SELECT*FROM學(xué)生WHERE注意:存在謂詞[NOT]EXISTS只判斷子查詢中是否有查詢結(jié)果,在謂詞[NOT]EXISTS前沒有相應(yīng)的字段名【例6】查詢沒有選修任何一門課的學(xué)生信息。(SELECT*FROM選課WHERE學(xué)號=學(xué)生.學(xué)號)NOTEXISTS考點(diǎn)12使用謂詞的子查詢(多值比較)EXISTS和NOTEXISTS72SELECT*FROM學(xué)生WHERE注意:存在謂詞[考點(diǎn)13集合的并運(yùn)算【格式】<SELECT語句1>UNION

<SELECT語句2>【說明】UNION語句默認(rèn)組合結(jié)果中排除重復(fù)記錄?!纠坎樵冞x修了003或005這兩門課程的學(xué)生信息。SELECT*FROM選課WHERE課程號="003";UNION;SELECT*FROM選課WHERE課程號="005"

73考點(diǎn)13集合的并運(yùn)算【格式】<SELECT語句1>UNI(14)給student表增加一個(gè)“平均戍績”字段(數(shù)值型,總寬度6,2位小數(shù))的SQL命令是A)ALTERTABLEstudentADD平均成績N(6,2)B)ALTERTABLEstudentADD平均成績D(6,2)C)ALTERTABLEstudentADD平均成績E(6,2)D)ALTERTABLEstudentADD平均成績Y(6,2)A2011.3國二考試真題

74(14)給student表增加一個(gè)“平均戍績”字段(數(shù)值型,(15)在VisualFoxPro中,執(zhí)行SQL的DELETE命令和傳統(tǒng)的FoxProDELETE命令都可以刪除數(shù)據(jù)庫表中的記錄,下面正確的描述是A)SQL的DELETE命令刪除數(shù)據(jù)庫表中記錄之前,不需要先用USE命令打開表B)SQL的DELETE命令和傳統(tǒng)的FoxProDELETE命令刪除數(shù)據(jù)庫表中的記錄之前,都需要先用命令USE打開表C)SQL的DELETE命令可以物理地刪除數(shù)據(jù)庫表中的記錄,而傳統(tǒng)的FoxProDELETE命令只能邏輯刪除數(shù)據(jù)庫表中的記錄D)傳統(tǒng)的FoxProDELETE命令還可以刪除其它工作區(qū)中打開的數(shù)據(jù)庫表中記錄A75(15)在VisualFoxPro中,執(zhí)行SQL的DELE(18)刪除student表的“平均成績”字段的正確SQL命令是A)DELETETABLEstudentDELETECOLUMN平均成績B)ALTERTABLEstudentDELETECOLUMN平均成績C)ALTERTABLEstudentDROPCOLUMN平均成績D)DELETETABLEstudentDROPCOLUMN平均成績C76(18)刪除student表的“平均成績”字段的正確SQL命(20)從student表刪除年齡大于30的記錄的正確SQL命令是A)DELETEFOR年齡>30B)DELETEFROMstudentWHERE年齡>30C)DELETEstudentFOR年齡>30D)DELETEstudentWHERE年齡>30B77(20)從student表刪除年齡大于30的記錄的正確SQL(24)向student表插入一條新記錄的正確SQL語句是A)APPENDINTOstudentVALUES(’0401’,’王芳’,’女’,18)B)APPENDstudentVALUES(’0401’,’王芳’,’女’,18)C)INSERTINTOstudentVALUES(’0401’,’王芳’,’女’,18)D)INSERTstudentVALUES(’0401’,’王芳’,’女’,18)C78(24)向student表插入一條新記錄的正確SQL語句是(28)消除SQLSELECT查詢結(jié)果中的重復(fù)記錄,可采取的方法是A)通過指定主關(guān)鍵字B)通過指定惟一索引C)使用DISTINCT短語D)使用UNIQUE短語C79(28)消除SQLSELECT查詢結(jié)果中的重復(fù)記錄,可采取第(31)-(35)題使用如下三個(gè)數(shù)據(jù)庫表:學(xué)生表:student(學(xué)號,姓名,性別,出生日期,院系)課程表:course(課程號,課程名,學(xué)時(shí))選課成績表:score(學(xué)號,課程號,成績)其中出生日期的數(shù)據(jù)類型為日期型,學(xué)時(shí)和成績?yōu)閿?shù)值型,其它均為字符型。80第(31)-(35)題使用如下三個(gè)數(shù)據(jù)庫表:31(31)查詢“計(jì)算機(jī)系”學(xué)生的學(xué)號、姓名、學(xué)生所選課程的課程名和成績,正確的是A)SELECTs.學(xué)號,姓名,課程名,成績FROMstudents,scoresc,coursec;WHEREs.學(xué)號=sc.學(xué)號,sc.課程號=c.課程號,院系=’計(jì)算機(jī)系’B)SELECT學(xué)號,姓名,課程名,成績FROMstudents,scoresc,coursec;WHEREs.學(xué)號=sc.學(xué)號ANDsc.課程號=c.課程號AND院系=’計(jì)算機(jī)系’C)SELECTs.學(xué)號,姓名,課程名,成績;FROM(studentsJOINscorescONs.學(xué)號=sc.學(xué)號);JOINcoursecONsc.課程號=c.課程號;WHERE院系=’計(jì)算機(jī)系’D)SELECT學(xué)號,姓名,課程名,成績;FROM(studentsJOINscorescONs.學(xué)號=sc.學(xué)號);JOINcoursecONsc.課程號=c.課程號;WHERE院系=’計(jì)算機(jī)系’C81(31)查詢“計(jì)算機(jī)系”學(xué)生的學(xué)號、姓名、學(xué)生所選課程的課程32)查詢所修課程成績都大于等于85分的學(xué)生的學(xué)號和姓名,正確的命令是A)SELECT學(xué)號,姓名FROMstudentsWHERENOTEXISTS;(SELECT*FROMscorescWHEREsc.學(xué)號=s.學(xué)號AND成績<85)B)SELECT學(xué)號,姓名FROMstudentsWHERENOTEXISTS;(SELECT*FROMscorescWHEREsc.學(xué)號=s.學(xué)號AND成績>=85)C)SELECT學(xué)號,姓名FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號AND成績>=85D)SELECT學(xué)號,姓名FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號ANDALL成績>=85A8232)查詢所修課程成績都大于等于85分的學(xué)生的學(xué)號和姓名,正(33)查詢選修課程在5門以上(含5門)的學(xué)生學(xué)號、姓名和平均成績,并按平均成績降序排序,正確的命令是A)SELECTs.學(xué)號,姓名,平均成績FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號;GROUPBYs.學(xué)號HAVINGCOUNT(*)>=5ORDERBY平均成績DESCB)SELECT學(xué)號,姓名,AVG(成績)FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號ANDCOUNT(*)>=5;GROUPBY學(xué)號ORDERBY3DESCC)SELECTs.學(xué)號,姓名,AVG(成績)平均成績FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號ANDCOUNT(*)>=5;GROUPBYs.學(xué)號ORDERBY平均成績DESCD)SELECTs.學(xué)號,姓名,AVG(成績)平均成績FROMstudents,scoresc;WHEREs.學(xué)號=sc.學(xué)號;GROUPBYs.學(xué)號HAVINGCOUNT(*)>=5;ORDERBY3DESCD83(33)查詢選修課程在5門以上(含5門)的學(xué)生學(xué)號、姓名和平(34)查詢同時(shí)選修課程號為C1和C5課程的學(xué)生的學(xué)號,正確的命令是A)SELECT學(xué)號FROMscorescWHERE課程號=’C1’AND學(xué)號IN;(SELECT學(xué)號FROMscorescWHERE課程號=’C5’)B)SELECT學(xué)號FROMscorescWHERE課程號=’C1’AND學(xué)號=;(SELECT學(xué)號FROMscorescWHERE課程號=’C5’}C)SELECT學(xué)號FROMscorescWHERE課程號=’C1’AND課程號=’C5’D)SELECT學(xué)號FROMscorescWHERE課程號=’C1’OR’C5’A84(34)查詢同時(shí)選修課程號為C1和C5課程的學(xué)生的學(xué)號,正確(35)刪除學(xué)號為“20091001”且課程號為“C1”的選課記錄,正確命令是A)DELETEFROMscoreWHERE課程號=’C1’;AND學(xué)號=’20091001’B)DELETEFROMscoreWHERE課程號=’C1’;OR學(xué)號=’20091001’C)DELETEFORMscoreWHERE課程號=’C1’;AND學(xué)號=’20091001’D)DELETEscoreWHERE課程號=’C1’;AND學(xué)號=’20091001’A85(35)刪除學(xué)號為“20091001”且課程號為“C1”的選(9)SQL語句“SELECTTOP10PERCENT*FROM訂單ORDERBY金額DESC”的查詢結(jié)果是訂單中金額【9】的10%的訂單信息。(11)使用SQL的CREATE

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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

提交評論