版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
國家二級VF機試(關系數據庫標準語言
SQL)模擬試卷第1套
一、選擇題(本題共29題,每題1.0分,共29分。)
1、使用如下數據表:學生.DBF:學號(C,8),姓名(C,6),性別(C,2),出生
日期(D)選課.DBF:學號(C,8),課程號(C,3),成績(N,5,1)設有學生(學
號,姓名,性別,出生三期)和選課(學號,課程號,成績)兩個關系,計算劉明同學
選修的所有課程的平均成績,正確的SQL語句是
A、SELECTAVG(成績)FROM選課WHERE姓名="劉明”
B、SELECTAVG(成績)FROM學生,選課WHERE姓名="劉明”
C、SELECTAVG(成績)FROM學生..選課WHERE學生..姓名="劉明”
D、SELECTAVG(成績)FROM學生,選課WHERE學生.學號二選課.學號AND
姓名=,,劉明,,
標準答案:D
知識點解析:本題考查selecl語句的用法。要求計算劉明同學選修的所有課程的平
均成績,利用AVG()函數求得成績字段的平均值,查詢的數據源為學生和課程兩
個表,所以FROM后面要跟這兩個表名。以同時滿足“學生.學號二選課.學號”和
"姓名=''劉明""為篩選記錄的條件。
2、使用如下數據表:學生.DBF:學號(C,8),姓名(C,6),性別(C,2),出生
日期(D)選課.DBF:學號(C,8),課程號(C,3),成績(N,5,1)假定學號的第
3、4位為專業(yè)代碼,要計算各專業(yè)學生選修課程號為“101”課程的平均成績,正確
的SQL語句是
A、SELECT專業(yè)ASSUBS(學號,3,2),平均分ASAVG(成績)FROM選課;
WHERE課程號=T01"GROUPBY專業(yè)
B、SELECTSUBS(學號,3,2)AS專業(yè),AVG(成績)AS平均分FROM選課;
WHERE課程號=T0LGROUPBY1
C、SELECTSUBS(學號,3,2)AS專業(yè),AVG(成績)AS平均分FROM選課;
WHERE課程號=T01"ORDERBY專業(yè)
D、SELECT專業(yè)ASSUBS(學號,3,2),平均分ASAVG(成績)FROM選課;
WHERE課程號=rO「ORDERBYI
標準答案:B
知識點解析:題干要求對各專業(yè)計算平均分,所以先要把不同專業(yè)的學生進行分
組,然后再計算平均分。其中,SQLSELECT中的GROUPBY短句用于對查詢結
果進行分組,利用AVG()函數求得指定字段的平均值,其中“GROUPBY1”表示按
輸出結果的第一個字段進行分組。
3、使用如下數據表:學生.DBF:學號(C,8),姓名(C,6),性別(C,2),出生
日期(D)選課.DBF:學號(C,8),課程號(C,3),成績(N,5,1)查詢選修課程號
為“101”的課程得分最高的同學,正確的SQL語句是
A、SELECT學生.學號,姓名FROM學生,選課WHERE學生.學號二選課.學
號;AND課程號="10「AND成績>=ALL(SELECT成績FROM選課)
B、SELECT學生.學號,姓名FROM學生,選課WHERE學生.學號=選課.學
號;AND成績>=ALL[SELECT成績FROM選課WHERE課程號=力01")
C、SELECT學生.學號,姓名FROM學生,選課WHERE學生.學號二選課.學
號;AND成績>=ALUSELECT成績FROM選課WHERE課程號=T0—)
D、SELECT學生.學號,姓名FROM學生.選課WHERE學生.學號二選課.學
號AND;課程號=T0LAND成績>=ALL(,SELECT成績FROM選課WHERE
課程號=T0「)
標準答案:D
知識點解析:題目中給出的選項都是采用嵌套壘詢實現(xiàn)題目要求。題干中要求對課
程號為“101”的學生進行查詢,所以內外查詢中都會用到條件“課程號=,”01川\其
中ALL表示所有的結果。
4、SQL的SELECT語句中,-HAVINGv條件表達式>“用來篩選滿足條件的
A、列
B、行
關系
D、分組
標準答案:D
知識點解析?:元組是二維表中的一行,表示一個實體的所有屬性的集合。在Visaul
FoxPro中,元組被稱為記錄。SQLSELECT中的HAVING短語必須跟隨GROUP
BY使用,它用來限定分組必須滿足的條件,進一步篩選滿足條件的元組。
5、下列關于SELECT短語的描述中錯誤的是
A、SELECT短語中可以使用別名
B、SELECT短語中只能包含表中的列及其構成的表達式
C、SELECT短語規(guī)定了結果集中的列順序
D、如果FROM短語引用的兩個表有同名的列,則SELECT短語弓|用它們時必須
使用表名前綴加以限定
標準答案:B
知識點解析:SELECT查詢命令的使用非常靈活,用它可以構造各種各樣的查詢。
SQL查詢語句可以從表中指定不同字段輸出,指定字段的輸出次序,即列的次序
可以重新排列,不需要與原數據表一致。SQL的查詢子句可以包含表中的表達式
以及表的別名。如果FROM短語中引用的兩個表有同名的列,則SELECT短語引
用它們時必須使用表名前綴加以限定。
6、與“SELECT*FROM學生INTODBFA”等價的語句是
A、SELECT*FROM學生INTOA
B、SELECT*FROM學生INTOTABLEA
C、SELECT*FROM學生TOTABLEA
D、SELECT*FROM學生TODBFA
標準答案:B
知識點解析:本題考查查詢結果的去向。若在SELECT語句中使用INTODBFI
TABLEV表名,短語,則可以將查詢的結果存放到表中,該表是自由表。
7、查詢在“北京”和“上?!背錾膶W生信息的SQL語句是
A、SELECT*FROM學生WHERE出生地=,北京,AND,上?!?/p>
13、SELECT*卜ROM學生WHERE出生地=,北京'OK'上海,
C、SELECT*FROM學生WHERE出生地=,北京,AND出生地=,上海,
D、SELECT*FROM學生WHERE出生地=,北京'OR出生地=,上海,
標準答案:D
知識點解析:一個學生的出生地,要么在“北京”,要么在"上?!?,所以兩者的關系
是“或”,用關鍵字。r。
8、在SQL語句中,與表達式“年齡BETWEEN12AND46”功能相同的表達式足
A、年齡>=[2OR<=46
B、年齡>=12ANDV=46
C、年齡>=1201<年齡(二4
D、年齡>=12AND年齡<二46
標準答案:D
知識點解析:本題考查BETWEENAND的含義。BETWEEN〈數值表達式
1>AND〈數值表達式2>的意思是“在…和…之間”,表示取<數值表達式1>和<數值
表達式2>之間的數,且包括兩個數值表達式值在內。
9、在SELECT語句中,下列關于HAVING短語的描述中正確的是
A、HAVING短語必須與GROUPBY短語同時使用
B、使用HAVING短語的同時不能使用WHERE短語
C、HAVING短語可以在任意的一個位置出現(xiàn)
D、HAVING短語與WHERE短語功能相同
標準答案:A
知識點解析:SQL查詢語句中,使用GRoUPBY短語對查詢結果進行分組。而
HAVING短語必須跟隨GROUPBY使用,它用來限定分組必須滿足的條件,并且
與WHERE不矛盾,在查詢中先用WHERE子句限定元組。有WHERE子句時,
GROUPBY子句一般放在其后。
10、在SQL的SELECT查詢的結果中,消除重復記錄的方法是
A、通過指定主索引實現(xiàn)
B、通過指定惟一索引實現(xiàn)
C、使用DISTINCT短語實現(xiàn)
D、使用WHERE短語實現(xiàn)
標準答案:C
知識點解析:本題考查SQL查詢的幾個特殊選項。在SQL-SELECT語句中,
DISTINCT關鍵詞用于消除查詢結果中的重復記錄,
11、假設每個歌手的“最后得分”的計算方法是:去淖一個最高分和一個最低分,取
剩下分數的平均分。根據“評分”表求每個歌手的“最后得分”,并存儲于表TEMP
中,表TEMP中有兩個字段:“歌手號”和“最后得分”,并且按最后得分降序排列,
生成表TEMP的SQL語句是
A、SELECT歌手號,(COUNT(分數)-MAX(分數)-MIN(分數))/(SUM(*)-2)最后得
分;KROM評分INTODBFTEMPGROUPBY歌手號ORDERBY最后得分DESC
B、SELECT歌手號,(COUNT(分數)-MAX(分數)-MIN(分數))/(SUM(*)-2)最后得
分:FROM評分INTODBFTEMPGROUPBY評委號ORDERBY最后得分DESC
C、SELECT歌手號,(SUM(分數)-MAX(分數)-MIN(分數))/(COUNT(*)-2)最后得
分;FROM評分INTODBFTEMPGROUPBY評委號ORDERBY最后得分DESC
D、SELECT歌手號,(SUM(分數)-MAX(分數)-MIN(分數))/(COUNT(*)-2)最后得
分;FROM評分INTODBFTEMPGROUPBY歌手號ORDERBY最后得分DESC
標準答案:D
知識點解析:SQL具備計算方式的檢索,通過計數函數COUNT??梢缘玫皆u委的
人數,歌手平均分的“算應該是“評委總數-2”,即COUNT⑺-2,而SUM()函數用
于求和,所以排除選項A和B。因為是計算歌手的平均分,應該按歌手號進行分
組,使用GROUPBY短語可以對記錄進行分組。
12、與“SELECT*FROM歌手WHERENOT(最后得分>9.00OR最后得分V
8.00)”等價的語句是
A、SELECT*FROM歌手WHERE最后得分BETWEEN9.00AND8.00
B、SELECT*FROM歌手WHERE最后得分>=8.00AND最后得分V=9.00
C、SELECT*FROM歌手WHERE最后得分>9.DOOR最后得分<8.00
D、SELECT*FROM歌手WHERE最后得分V=8.0()AND最后得分>=9.00
標準答案:B
知識點解析:SELECT查詢命令的使用非常靈活,用它可以構造各種各樣的查詢。
本題中給出的查詢語句的功能是檢索出最后得分不大于9.00或者不小于8.00,
即小于或等于9.00和大于或等于8.00的歌手記錄。
13、假設temp,dbf數據表中有兩個字段“歌手號”和“最后得分”,下面程序段的功
能是:將temp,dbf中歌手的“最后得分”填入“歌手”表對應歌手的“最后得分”字段
中(假設已增加了該字段),在下劃線處應該填寫的SQL語句是USE歌手DO
WHILE.NOT.EOF()REPLACE歌手.最后得分WITHa[2]SKIP
ENDDO
A、SELECT*FROMtempWHEREtemp.歌手號=歌手.歌手號TOARRAYa
B、SELECT*FROMtempWHEREtemp.歌手號=歌手.歌手號INTOARRAYa
C、SELECT*FROMtempWHEREtemp.歌手號=歌手.歌手號TOFILEa
D、SELECT*FROMtempWHEREtemp.歌手號二歌手.歌手號INTOFILEa
標準答案:B
知識點解析:由題目中給出的“REPLACE歌手.最后得分WTHa[2「語句可知,數
據通過數組a進行傳遞,因此SQL查詢的輸出去向應為數組,所以選項C、D不
符合。查詢輸出中表示瑜出到數組的短語為“INTOARRAY”。
14、與“SELECTDISTINCT歌手號FROM歌手WHERE最后得分>二人口;
(SELECT最后得分FROM歌手WHERESUBSTR(歌手號,1,1)=,2,廣等價的
SQL語句是
A、SELECTDISTINCT歌手號FROM歌手WHERE最后得分>=;(SELECT
MAX(最后得分)卜ROM歌手WHERESUBSTR(歌手號,1,1尸2')
B、SELECTDISTINCT歌手號FROM歌手WHERE最后得分>二;(SELECT
MIN(最后得分)FROM歌手WHERESUBSTR(歌手號,1,1尸2,)
C、SELECTDISTINCT歌手號FROM歌手WHERE最后得分>=ANY;(SELECT
最后得分FROM歌手WHERESUBSTR(歌手號,1,1)="2”)
D、SELECTDISTINCT歌手號FROM歌手WHERE最后得分>=50乂£;
(SELECT最后得分FROM歌手WHERESUBSTR(歌手號,1,1尸2,)
標準答案:A
知識點解析?:題干中的結果是結果是檢索出最后得分大于歌手號第一個數字為“2”
的所有歌手的歌手號,囚為要大于所有第一個數字為“2”的歌手的最后得分,只要
滿足大于第一個數字為“2”的歌手最后得分即可,MAX函數可用來求最高分。
15、假設“訂單”表中有訂單號、職員號、客戶號和金額字段,正確的SQL語句只
能是
A、SELECT職員號FROM訂單:GROUPBY職員號HAVINGCOUNT(*)>3
ANDAVG金額>200
B、SELECT職員號FROM訂單:GROUPBY職或號HAVINGCOUNT(*)>3
ANDAVG(金額)>200
C、SELECT職員號FROM訂單:GROUPRY職員號HAVINGCOUNT(*)>3
WHEREAVG(金額)>200
D、SELECT職員號FROM訂單:GROUPBY職員號WHERECOUNT(*)>3AND
AVG金額>200
標準答案:B
知識點解析:SQL查詢語句中使用GROUPBY短語用于對查詢結果進行分組,而
HAVING短語必須跟隨GROUPBY使用,它用來限定分組必須滿足的條件,并且
與WHERE子句不矛盾,在查詢中先用WHERE子句限定元組。其中有WHERE
子句時,GROUPBY子句一般放在其后。計算平均值的函數表達式為AVG()。
16、假設同一名稱的產品有不同的型號和產地,則計算每種產品平均單價的SQL
語句是
A、SELECT產品名稱,AVG(單價)FROM產品GROUPBY單價
B、SELECT產品名稱,AVG(單價)FROM產品ORDERBY單價
C、SELECT產品名稱,AVG(單價)FROM產品ORDERBY產品名稱
D、SELECT產品名稱,AVG(單價)FROM產品GROUPBY產品名稱
標準答案:D
知識點解析:SQL查詢語句中使用GROUPBY短語對查詢結果進行分組。其中,
有WHERE子句時,GROUPBY子句一般放在其后。計算平均值的函數表達式為
AVG()o
17、設有S(學號,姓名,性別)和sc(學號,課程號,成績)兩個表,用下列SQL語
句檢索選修的每門課程的成績都高于或等于85分的學生的學號、姓名和性別,正
確的是
A、SELEC1學號,姓名,性另IJ卜ROMsWHEREEXISTS;(SELECl^FROMsc
WHEREsc.學號二s.學號AND成績V=85、)
B、SELECT學號,姓名,性別FROMsWHERENOTEXISTS;(SELECT*FROM
scWHEREsc.學號=s.學號AND成績V=85)
C、SELECT學號,姓名,性另ijFROMsWHEREEXISTS;(SELECT*FROMsc
WHEREsc.學號二s.學號AND成績>85)
D、SELECT學號,姓名,性別FROMsWHERENOTEXISTS;(SELECT*FROM
scWHEREsc.學號二s.學號AND成績V85)
標準答案:D
知識點解析:題目中給出的四個選項為利用SQL謂訶查詢實現(xiàn)題干要求,正確的
語句應該是:SELECT學號,姓名,性別FROMSWHERENOTEXISTS;
(SELECT*FROMSCWHERESC.學號二S.學號AND成績<85)或者:SELECT
學號,姓名,性另ijFROMSWHEREEXISTS:(SELECT*FROMSCWHERE
SC.學號二S.學號AND成績>=85)。
18、與“SELECTDISTINCT產品號FROM產品WHERE單價>=ALL(SELECT單
價FROM產品WHERESUBSTR(產品號,1,1尸,2》等價的SQL命令是
A、SELECTDISTINCT產品號FROM產品WHERE單價>=;(SELECTMAX(單
價)FROM產品WHERESURSTR(產品號,l.1)=‘'2'')
B、SELECTDISTINCT產品號FROM產品WHERE單價>=;(SELECTMIN(單
價)FROM產品WHERESUBSTR(產品號,1,1尸,2,)
C、SELECTDISTINCT產品號FROM產品WHERE單價>=ANY:(SELECT單價
FROM產品WHERESUBSTR(產品號,1,1)=,2)
D、SELECTDISTINCT產品號FROM產品WHERE單價>=SOME;(SELECT單價
FROM產品WHERESUBSTR(產品號,1,1尸‘2'')
標準答案:A
知識點解析:本題考查select語句的使用。題目中的SELECT語句的含義是:選出
不重復的單價大于等于所有產品號第一個數字為2的產品單價的產品號。所以與之
含義相同的查詢語句是選項Ao
19、SQL語言的查詢語句是
A、INSERT
B、UPDATE
C、DELETE
D、SELECT
標準答案:D
知識點解析:SQL的查詢語句是SELECT,INSERT是插入語句,UPDATE是更新
語句,DELETE是冊IJ除語句。
20、SQL的SELECT語句中,"HAVING”用來篩選滿足條件的
A、列
B、行
C、關系
D、分組
標準答案:D
知識點解析:本題考查“HAVING”短語的含義。在SQL的SELECT語句中,
GRouPBY〈分組字段1〉[,分組字段2…][HAVING分組限定條件],可以按一列或
多列分組,還可以使用HAVING進一步限定分組的條件。HAVING子句總是跟在
GROUPBY子句之后,不可以單獨使用。
21、在VisualFoxPro中,假設教師表T(教師號,姓名,性別,職稱,研究生導師)
中,性別是C型字段,研究生導師是L型字段。若要查詢“是研究生導師的女老
師”信息,那么SQL語句“SELECT*FROMTWHEREV邏輯表達式〉”中的〈邏輯
表達式>應是
A、研究生導師AND性別="女”
B、研究生導師OR性別="女”
C、性別="女"AND研究生導師二.F.
D、研究生導師工T.OR性別二女
標準答案:A
知識點解析:根據題意,查詢應該同時滿足兩個條件,即“研究生導師”和“女老
師”.兩個條件應該用AND連接.故選項R和選項C錯誤:由于“研究生導師”字
段是邏輯型,對應表達式應寫為“研究生導師二.T.”或者“研究生導師”。
22、查詢學生選修課程成績小于60分的學號,正確的SQL語句是
A、SELECTDISTINCT學號FROMSCWHERE”成績"V60
B、SELECTDISTINCT學號FROMSCWHERE成績
C、SELECTDISTINCT學號FROMSCWHERE成績<60
D、SELECTDISTINCT"學號"FROMSCWHERE"成績"V60
標準答案:c
知識點詞析:查詢條件“課程成績小于60分”對應的條件表達式應該書寫為“成績
<60"。
23、查詢學生表S的全部記錄并存儲于臨時表文件。ne中的SQL命令是
A、SELECT*FROM學生表INTOCURSORone
B、SELECT*FROM學生表TOCURSORone
C、SELECT*FROM學生表INTOCURSORDBFone
D、SELECT*FROM學生表TOCURSORDBFone
標準答案:A
知識點解析:將查詢結果保存在臨時表中應使用短語INTOCURSOR〈表名
24、查詢成績在70分至85分之間學生的學號、課程號和成績,正確的SQL語句
是
A、SELECT學號,課程號,成績FROMscWHERE成績BETWEEN70AND85
B、SELECT學號,課程號,成績FROMscWHERE成績>=70OR成績V=85
C、SELECT學號,課程號,成績卜R(JMscWHERE成績>=7UORV=85
D、SELECT學號,課程號,成績FROMscWHEI^Jj^i(i>=70AND<=85
標準答案:A
知識點解析:如果查詢條件的值是在什么范圍之內,可以使用
BETWEEN...AND...運算
25、查詢有選課記錄,但沒有考試成績的學生的學號和課程號,正確的SQL語句
是
A、SELECT學號,課程號FROMscWHERE成績
B、SELECT學號,課程號FROMscWHERE成績=NULL
C、SELECT學號,課程號FROMscWHERE成績【SNULL
D、SELECT學號,課程號FROMscWHERE成績
標準答案:C
知識點解析:查詢空值時要使用ISNULL,而二NULL是無效的,因為空值不是一
個確定的值,所以不能用"=''這樣的運算符進行比較。
26、查詢選修C2課程號的學生姓名,下列SQL語句中錯誤是
A、SELECT姓名FROMSWHEREEXISTS(SELECT*FROMSCWHERE學號
=S.學號AND課程號=,C2,)
B、SELECTft名FRoMSWHERE學號IN(SELECT學號FRoMSCWHERE謖程
號=(2')
C、SELECT姓名FROMSJOINSCONS.學號二SC.學號WHERE課程號=(2,
D、SELECT姓名FROMSWHERE學號二(SELECT學號FROMSCWHERE課程
號=,C2,)
標準答案:D
知識點解析:選項A中,使用EXISTS謂詞來檢查子查詢中是否有結果返回,它
的查詢過程是:首先在外查詢中,從S表中取出第一條記錄,再在內查詢中,針
對該記錄,在SC表中逐條記錄判斷是否存在符合where條件(即“選修C2課程號的
學生”)的記錄,如果存在,則從外查詢的S表中查找出該記錄對應的“姓名”值;然
后依次類推,從S表中取出第二條記錄,在內查詢中與SC表中的所有記錄進行比
較,直到將S表中的所有記錄都處理完畢。選項B)是嵌套查詢,先在內查詢中從
SC表中獲得選修了C2課程號的學生的“學號”,再在外查詢中從S表中查找出這些
“學號,,對應學生的“姓名,,,由于選修了C2課程號的學生可能不止一個,因此在內
查詢中獲得的“學號”是一個集合,因此應該使用運算符IN。選項C是聯(lián)接查詢,
將S表和SC表以“學號”字段相等為條件進行聯(lián)接,查找出選修了C2課程號的學
生。
27、在SQLSELECT語句中與INTOTABLE等價的短語是
A、INTODBF
B、TOTABLE
C、INTOFORM
D、INTOFILE
標準答案:A
知識點解析:SQLSELECT語句中INTOTABL,E短語和INTODBF短語都可用
來定義將查詢結果存放到永久表中。另外,INTOARRAY將查詢結果存放到數
組,INTOCURSOR將查詢結果存放到臨時表,TOFILE將查詢結果存放到文本文
件中。
28、若SQL語句中的ORDERBY短語中指定了多個字段,則
A、依次按自右至左的字段順序排序
B、只按第一個字段排序
C、依次按自左至右的字段順序排序
D、無法排序
標準答案:C
知識點解析:通過在SELECT語句中加入ORDERBY可將查詢結果排序,可以按
升序和降序排序,命令格式如下:ORDERBYv排序字段1>[ASC1DESC][,排序字
段2[ASC1DESC]...]。ASC表示按升序排序,DESC表示按降序排序,可以按一列
或多列排序,升序是默認的排列方式。如果短語中指定多個字段,則依次按自左向
右的順序進行排序。
29、與“SELECT*FROM教師表INTODBFA”等價的語句是
A、SELECT*FROM教師表TODBFA
B、SELECT*FROM教師表TOTABLEA
C、SELECT*FROM教師表INTOTABLEA
D、SELECT*FROM教師表INTOA
標準答案:C
知識點解析:本題考查查詢結果的去向。若在SELECT語句中使用INTODBFI
TABLEV表名,短語,則可以將查詢的結果存放到表中,該表是自由表。所以應選
Co
家二級VF機試(關系數據庫標準語言
SQL)模擬試卷第2套
一、選擇題(本題共26題,每題1.0分,共26分。)
1、插入一條記錄到表結構為(職工號,姓名,工資)的表Employee中,正確的SQL
命令是
A、INSERTTOEmployeeVALUES。'19620426“,“李平“,8000)
B、INSERTINTOEmployeeVALUES。19620426“,“李平“,8000)
C、INSERTINTOEmployeeRECORD(”19620426“,“李平“,8000)
D、INSERTTOEmployeeRECORD("196204261',“李平”,8000)
標準答案:B
知識點解析:本題考查SQL的數據插入命令。格式如下格式I:INSERTINTO
dbL_name[(fname1[,fname2,...])]VALUES(eXpressionl[,expression2,…])格
式2:INSERTINTOdbf_nameFROMARRAYArrayName[FROMMEMVAR(說
明】①DINSERTINTOdbf_name說明向由dbfnamc指定的表中插入記錄;&當
插入的不是完整的記錄時,可以用fnamel,fname2,…指定字段;③VALUSES
(eXpressionl[,eXpression2,…])給出具體的記錄值;(4)FROMARRAY
ArrayName說明從指定的數組中插入記錄值;⑤FROMMEMVAR說明根據同名
的內存變量來插入記錄值,如果同名的變量不存在,那么相應的字段值為默認值或
空值。
2、將表結構為(職工號,姓名,工資)的表Employee中所有職工的工資增加20%,
正確的SQL命令是
A、CHANGEEmployeeSET工資=工資*1.2
B、CHANGEEmployeeSET工資WITH工資*1.2
C、UPDATEEmployeeSET工資二工資*1.2
D、UPDATEEmployeeSET工資WITH工資*1.2
標準答案:C
知識點解析:本題考查SQL的數據更新命令。格式如下UPDATETableNameSET
Column_Name1=eXpression1[,ColumnName1=eXpression2....]WHERE
Condition一般使用WHERE子句指定條柞,以更新滿足條件的一些記錄的字段
值,并且一次可以更新多個字段;如果不使用WHERE子句,則更新全部記錄。
題目要求將表結構為(職工號,姓名,工資)的表Employee中所有職工的工資增加
20%,所以SET工資=工資幸*1.2o
3、刪除Employee表中職工號為“19620426”的記錄,正確的SQL語句是
A、DELETEFROMEmployeeWHILE職工號="19620426”
B、DELETEFOREmployeeWHERE職工號="19620426”
C、DELETEFOREmployeeWHILE職工號="19620426”
D、DELETEFROMEmployeeWHERE職工號二”19620426”
標準答案:D
知識點解析:本題考查SQL語句刪除表中記錄。命令格式如下:DELETEFROM
TableName[WHERECondition]參數FROM指定從哪個表中刪除數據,WHERE指
定被刪除記錄所滿足的條件,如果不使用WHERE子句,則刪除該表中的全部記
錄。
4、將Employee表中職工號為“19620426”的記錄中“單位號”修改為“003”正確的
SQL語句是
A、UPDATEEmployeeSET單位號="003"WHERE職工號IS19620426”
B、UPDATEEmployeeWHERE職工號IS”19620426”SET單位號="003”
C、UPDATEEmployeeSET單位號二"003"WHERE職工號="19620426”
D、UPDATEEmployee單位號WITHM003"WHERE職工號="19620426”
標準答案:C
知識點解析:本題考查SQL的數據更新命令。格式為:UPDATETableNameSET
ColumnName1=eXpression1[,Column_Namel=eXpression2....]WHERE
Condition一般使用WHERE子句指定條件,以更新滿足條件的一些記錄的字段
值,并且一次可以更新多個字段;如果不使用WHERE子旬,則更新全部記錄。
題中將Employee表中職工號為“19620426”的記錄的“單位號”修改為“003”,所以使
用UPDATE命令,修改單位號=“003”,條件為:職工號二”19620426”。
5、在VisualFoxPro中,下列關于SQL表定義語句(CREATETABLE)的說法中錯
誤的是
A、可以定義一個新的基本表結構
B、可以定義表中的主關鍵字
C、可以定義表的域完整性、字段有效性規(guī)則等
D、對自由表,同樣可以實現(xiàn)其完整性、有效性規(guī)則等信息的設置
標準答案:D
知識點解析:可以用SQL表定義語句(CREATETABLE淀義表的基本結構,并可
以在語句中用PrimaryKey短語定義主關鍵字,用Check短語定義字段有效性規(guī)
則,自由表是不屬于任何數據庫的表,不能對自由表進行字段有效性的設置。
6、SQL命令:ALTERTABLESADD年齡ICHECK年齡>15AND年齡V30,該命
令的含義是
A、給數據庫表S增加一個年齡”字段
B、將數據庫表S中“年齡”字段取值范圍修改為15至30歲之間
C、給數據庫表S中“年齡”字段增加一個取值范圍約束
D、刪除數據庫表S中的“年齡”字段
標準答案:A
知識點解析:本題考查ALTER命令的語法。給表新增一列的SQL命令格式為:
ALTERTABLE表名ADD(COLUMN)列名數據類型列級約束題中命令的含義是
給表S增加一個“年齡”字段,數據類型為整型,年齡的范圍為15至30歲之間。
7、為“運動員”表增加一個字段“得分”的SQL語句是
A、CHANGETABLE運動員ADD得分1
B、ALTERDATA運動員ADD得分1
C、ALTERTABLE運動員ADD得分1
D、CHANGETABLE運動員INSERT得分1
標準答案:C
知識點解析:在SQL語句中為表增加字段的格式為:ALTERTABLEV表名,
ADDV字段名>,本題只有選項C)中包含ALTERTABLE命令關鍵字。
8、在SQL的ALTERTABLE語句中,為了增加一個新的字段應該使用短語
A、CREATE
B、APPEND
C>COLUMN
D、ADD
標準答案:D
知識點解析:選項A)是創(chuàng)建一個新的對象,例如一個表:選項B)用來向表中追加
記錄,它是非SQL命令;在SQL的ALTERTABLE語句中,可以使用
ADD[COLUMN]短語來增加一個新的字段。其中,COLUMN短語表示“列”,可以
省略。
9、為“歌手”表增加一個字段“最后得分”的SQL語句是
A、ALTERTABLE歌手ADD最后得分F(6,2)
B、ALTERDBF歌手ADD最后得分F6,2
C、CHANGETABLE歌手ADD最后得分F(6,2)
D、CHANGETABLE歌手INSERT最后得分F6,2
標準答案:A
知識點解析:表結構的修改命令ALTERTABLE有三種格式。通過下列命令格式
可以添加(ADD)新的字段或修改(ALTER)已有的字段。ALERTTABLEV表名1>
ADDIALTER[COLUMN)字段名字段類型[(寬度[,小數位數])][NULLINOT
NULL][CHECK規(guī)則表達式[ERROR錯誤提示信息]][DEFAULT默認值表達
式][PRIMARYKEYIUNIQUE][REFERENCESV表名2>[TAG索弓I名]]
10、為“評分”表的“分數”字段添加有效性規(guī)則:“分數必須大于等于。并且小于等
于10”,正確的SQL語句是
A、CHANGETABLE評分ALTER分數SETCHECK分數>=0AND分數V=10
B、ALTERTABLE評分ALTER分數SETCHECK分數>=0AND分數V=10
C、ALTERTABLE評分ALTER分數CHECK分數>=0AND分數V=10
D、CHANGETABLE評分ALTER分數SETCHECK分數>=0OR分數V=IO
標準答案:B
知識點解析:表結構的修改命令ALTERTABLE有三種格式。通過下列命令格式
可以添加(ADD)新的字段或修改(ALTER)已有的字段。ALERTTABLEV表名1>
ADDIALTERICOLUMN]字段名字段類型[(寬度|,小數位數])|[NULLINOT
NULL][CHECK規(guī)則表達式[ERROR錯誤提示信息]][DEFAULT默認值表達
式][PRIMARYKEYIUNIQUE][REFERENCESV表名2>[TAG索引名]]
II、SQL語句中修改表結構的命令是
A、ALTERTABLE
B、MODIFYTABLE
C、ALTERSTRUCTURE
D、MODIFYSTRUCTURE
標準答案:A
知識點解析:SQL定義功能中,表結構修改的關鍵短語為ALTERTABLE,可直
接通過語句修改表結構;選項B)和C)都是錯誤的命令語句:而選項D)中需要先打
開表,然后通過MODIFYSTRUCTURE命令打開表設計器,修改當前表的結構。
12、根據“產品”表建立視圖myview,視圖中含有包括了“產品號”左邊第一位是T
的所有記錄,正確的SQL命令是
A、CREATEVIEWmyviewASSELECT*FROM產品WHERELEFT(產品號,
1)二T
B、CREATEVIEWmyviewASSELECT*FROM產品WHERELIKE("1",產品號)
C、CREATEVIEWmyviewSELECT*FROM產品WHERELEFT(產品號,1)="1"
D、CREATEVIEWmyviewSELECT*FROM產品WHERELIKE(“1",產品號)
標準答案:A
知識點解析:本題考查創(chuàng)建視圖語句。其語法為;CREATEVIEW視圖名稱AS
SELECT列名稱FROM表名稱WHERE條件對于本題平說,視圖名稱為myview,
條件是“產品號''左邊第一位是力''即LEFT(產品號,1)=T.
13、下列與修改表結構相關的命令是
A、INSERT
B、ALTER
C、UPDATE
D、CREATE
標準答案:B
知識點解析:INSERT是插入命令,UPDATE是更新命令,CREATE是倉4建表命
令,ALTER是用來修改表結構的命令。
14、假設有student表,可以正確添加字段“平均分數”的命令是
A、ALTERTABLEstudentADD平均分數F(6,2)
B、ALTERDBFstudentADD平均分數F6,2
C、CHANGETABLEstudentADD平均分數F(6,2)
D、CHANGETABLEstudentINSERT平均分數6,2
標準答案:A
知識點解析:向表中添加新字段的SQL語句格式為:ALTERTABLETableName
ADDFieldNamelFieldType[(nFieldWidth[,nPrccision])][NULLI
NOTNULL][CHECK...][ERROR....][DEFAULT....][PRIMARYKEYI
UNIQUE]〕REFRERENCEStablename2|TAGTagnamel]|
15、“教師表”中有“職工號”、“姓名”和“工齡”字段,其中“職工號”為主關鍵字,建
立“教師表”的SQL命令是
A、CREATETABLE教師表(職工號C(10)PRIMARY,姓名C(20),工齡I)
B、CREATETABLE教師表(職工號C(10)FOREIGN,姓名C(20),工齡I)
C、CREATETABLE教師表(職工號c(10)FOREIGNKEY,姓名C(20),工齡D)
D、CREATETABLE教師表(職工號C(IO)PRIMARYKEY,姓名C(20),工齡I)
標準答案:D
知識點解析:在VisualFoxPro中同樣可以通過SQL命令建立數據表,命令格式如
下:CREATETABLEIDBFV表名I>[NAMEV長表名>][FREE](V字段名
<類型>[(V字段寬度>[,<小數位數>])=[NULLINOTNULL][CHECKV邏輯
表達式1>[ERRORV字符型文本信息1>]][DEFAULTV表達式1>][PRIMARY
KEYIUNIQUE][REFERENCESV表名2>|TAG<標識名1>]][NOCPTRANS][,
〈字段名2>…PRIMARYKEYV表達式2>TAG<標識名2>1,UNIQUE<
表達式3>TAGV標識名3>][,FOREIGNKEYV表達式4>TAGV標識名4>
|NODUP|REFERENCESV表名3>[TAGV標識名5>]||,CHECKV邏輯表達式2
>[ERRORV字符型文本信息2>]])FROMARRAYV數組名〉【說明】通過
CREATETABLE命令可以完成表設計器中的所有操作。下面對以上格式中的具體
選項進行介紹。TABLE和DBF選項等價,都是建立表文件。V表名,:為新建
表指定表名。NAME〈長表名〉:為新建表指定一個長表名。只有創(chuàng)建數據庫表
時,才能指定一個長表名,長表名最多可以包含128個字符。FREE:建立的表是
自由表,不加入到打開的數據庫中。V字段名V類型>[(<字段寬度>[,V小
數位數>])]:指定字段名、字段類型、字段寬度及小數位數。字段類型可以用一個
字符表示。NULL:允許該字段值為空;NOTNULL:字段值不能為空。缺省值為
NOTNULLoCHECKV邏輯表達式1>:指定字段的合法值及字段值的約束條
件。ERRORV字符型文本信息1>:輸入的值不符合CHECK子句的合法值時,
顯示的錯誤信息。DEFAULTV表達式〉:為字段指定一個缺省值,表達式的數據
類型與字段的數據類型要一致。PRIMARYKEY:為字段創(chuàng)建一個主索引:
UNIQUE:為字段創(chuàng)建一個候選索引。REFERENCES<表名>[TAG<標識名
>]:指定建立永久關系的父表,同時以指定字段為索引關鍵字建立外索引,用字
段名作為索引標識名。表名為父表表名,標識名為父表中的索引標識名。FROM
ARRAYV數組名〉:由數組創(chuàng)建表結構。數組名指定的數組包含表的每一個字段
的字段名、字段類型、字段寬度及小數位數。
16、SQL語句中刪除表的命令是
A、DROPTABLE
B、ERASETABLE
C.DELETETABLE
D、DELETEDBF
標準答案:A
知識點解析:SQL語句中刪除表的命令是:DROPTABLE<table_name>DROP
TABLE直接從磁盤上刪除Vtable_name>所對應的.dbf文件。
17、創(chuàng)建一個表,使用的SQL命令是
A、CREATELIST
B、CREATEDATEBASE
C、CREATETABLE
D、CREATEINDEX
標準答案:C
知識點解析:本題考查創(chuàng)建表的命令CREATETABLE。其格式為CREATE
TABLEIDBFV表名〉(字段名1字段類型1[(字段寬度)],字段名2字段類型2[(字
段寬度)],…)[CHECKV條件表達式>][DEFAULT,〈表達式〉]“PRIMARY
KEYIUNIQUE]…)用CREATETABLE命令可以完成表設計器所能完成的所有功
能。除具有建立表的基本功能外,CREATETABLE命令還可以建立主關鍵字(主索
弓|)PRIMARYKEY、定義域完整性的CHECK約束、定義默認值的DEFAULT
等。
18、建立一個視圖salary,該視圖包括了系號和該系的平均工資兩個字段,正確的
SQL語句是
A、CREATEVIEWsalaryAS系號,AVG(T資)AS平均工資FROM教師GROUP
BY系號
B、CREATEVIEWsalaiyASSELECT系號,AVG(工資)AS平均工資FROM教師
GROUPBY系名
C、CREATEVIEwsalarySELECT系號,AVG(工資)AS平均工資FROM教師
GROUPBY系號
D、CREATEVIEWsalaryASSELECT系號,AVG]工資)AS平均工資FROM教師
GROUPBY系號
標準答案:D
知識點解析:本題考查創(chuàng)建視圖語句。創(chuàng)建視圖的語法為:CREATEVIEW
vicw_nameASSELECTcolumn_name(s)FROMtable_nameWHEREcondition對于
本題來說,vicw_namc為salary,column_namc⑸中包括系號,AVG(工資),
table_name為教師。
19、創(chuàng)建一個視圖,使用的SQL命令是
A、CREATE
B、CREATEDATEBASE
C、CREATEVIEW
D、CREATETABLE
標準答案:C
知識點解析:創(chuàng)建一個視圖的SQL命令是CREATEVIEW,其格式為:CREATE
VIEWview_nameAS<selectiS^J><>其中Vselecl語句,可以是任意的SELECT
查詢語句,它說明和限定了視圖中的數據;視圖的字段名將與〈select語句》中指
定的字段名或表中的字段名同名。
20、在SQL中,刪除表的語句是
A、DROPTABLE
B、DROPVIEW
C、ERASETABLE
D、DELETETABLE
標準答案:A
知識點解析:在SQL中,刪除表的語句是DROPTABLE格式為:DROPTABLE
<table_name>,DROPTABLE直接從磁盤上刪除<lable_name>所對應的.dbf
文件。
21、表名為匕mployee的表結構是(職工號,姓名,工資),建立表Employee的SQL
命令是
A、CREATETABLEEmployee(職工號C(10),姓名C(20),工資Y)
B、CREATEEmployeeTABLE(職工號C(10),姓名C(20),工資Y)
C、CREATEDATABASEEmployee(職工號C(10),姓名C(20),工資Y)
D、CREATEEmployeeDATABASE(職工號C(10),姓名C(20),工資Y)
標準答案:A
知識點解析:本題考查sql建立表的命令。格式為:CREATETABLEIDBF(表
名〉(字段名1字段類型1[(字段寬度)],字段名2字段類型2[(字段寬度)],
|CHECK<條件表達式[DEFAULT,<表達式>]|PRIMARYKEYI
UNIQUE]...)用CREATETABLE命令可以完成表設計器所能完成的所有功能。除
具有建立表的基本功能外,CREATETABLE命令還可以建立主關鍵字(主索
引)PRIMARYKEY、定義域完整性的CHECK約束、定義默認值的DEFAULT
等。
22、為Employee表增加一個字段“出生日期”,正確的SQL語句是
A、CHANGETABLEEmployeeADD出生日期D
B、ALTERDBFEmployeeADD出生日期D
C、ALTERTABLEEmployeeADD出生日期D
D、CHANGETABLEEmployeeINSERT出生日期D
標準答案:A
知識點解析:本題考查SQL語句修改表結構。其格式為:ALTERTABLEV表名
>ADD[COLUMN[V字段名1>〈字段類型>[(<長度,V小數位數>])]
[NULLINOTNULL][CHECK(邏輯表達式1>[ERROR(字符型文本信息>]]
[DEFAULTV表達式1>][PRIMARYKEYIUNIQUE][ADDPRIMARYKEYV表
達式1>TAG<標識名1>[FORV邏輯表達式2>|]|ADDUNIQUEV表達式2>
[TAGV標識名2>[FORV邏輯表達式3>]]][ADDFOREIGNKEY[V表達式
3>][TAGV標識名4>]FORv邏輯表達式4>1REFERENCES表名2[TAGV標識名
4>]]該格式可以向表中添加新的字段、設設字段有效性規(guī)則、建立索引和建立表
間聯(lián)系等。
23>有表名為Employee的表結構(職工號,姓名,工資),為表Employee增加字段
“住址”的SQL命令是
A、ALTERDBFEmployeeADD住J止C(30)
B、CHANGEDBFEmployeeADDC(30)
C、CHANGETABLEEmployeeADD住址C(30)
D、ALTERTABLEEmployeeADD住力上C(30)
標準答案:D
知識點解析:本題考查表結構的修改。格式為:ALTERTABLEV表名〉
ADD[COLUMN[(字段名1>〈字段類型〉[(<長度>[,<小數位數>])]
[NULLINOTNULL][CHECKV邏輯表達式1>[ERRORV字符型文本信息>口
[DEFAULTV表達式1>]|PRIMARYKEYIUNIQUE][ADDPRIMARYKEYV表
達式1>TAG<標識名I>[FORV邏輯表達式2>]][ADDUNIQUEV表達式2>
[TAGV標識名2>[FORV邏輯表達式3>]]][ADDFOREIGNKEY[V表達式3
>][TAGV標識名4>]|FORV邏輯表達式4>REFERENCES表名2[TAGV標識
名4>|]該格式可以向表中添加新的字段、設置字段有效性規(guī)則、建立索引和建立
表間聯(lián)系等。
24、建立表Employee的視圖Em_view,正確的SQL命令是
A、CREATEVIEWEmviewWHLIESELECT職工號,工資FROMEmployee
B、CREATEASEmviewV正WSELECT職工號,工資FROMEmployee
C、CREATEVIEWEmviewASSELECT職工號,工資FROMEmployee
D、CREATEVIEWEmviewSELECT職工號,工資FROMEmployee
標準答案:C
知識點解析:本題使用SOL命令創(chuàng)建視圖。使用CREATEVIEW命令創(chuàng)建視圖,
其語法為:CREATEVIEWview_nameASSELECTcolumn_name(s)FROM
lable_nameWHEREcondition
25、刪除表Emtemp的SQL語句是
A、DROPTABLEEm_temp
B、DELETETABLEEm_temp
C、DROPFILEEm_tcmp
D、DELETEFILEEm_temp
標準答案:A
知識點解析:本題考查SQL語句刪除表。格式DROPTABLEVtabljnamc〉。
DROPTABLE直接從磁盤上刪除Vlable_name>所對應的.dbf文件。題目刪除表
Em_tempo
26、SQL語句中刪除視里的命令是
A、DROPTABLE
B、DROPVIEW
C、ERASETABLE
D、ERASEVIEW
標準答案:B
知識點解析:刪除視圖文件的命令格式是:DROPVIEWV視圖文件名〉;建立視
圖文件的命令式為:CREATEVIEW<視圖文件名>。
國家二級VF機試(關系數據庫標準語言
SQL)模擬試卷第3套
一、選擇題(本題共27題,每題1.0分,共27分。)
1、設有學生表student(學號?,姓名,性別,出生日期,院系)、課程表course(課程
號,課程名,學時)和選課表score(學號,課程號,成績),查詢“計算機系”學生的
學號、姓名、學生所選課程的課程名和成績,正確的命令是
A^SELECTs.學號,姓名,課程名,成績FROMstudentS,scoresc,coursec;
WHEREs.學號=sc.學號,sc.課程號=c.課程號,院系一計算機系’
B、SELECT學號,姓名,課程名,成績FROMsludents,scoresc,coursec;
WHEREs.學號=sc.學號ANDsc.課程號=c.課程號AND院系=,計算機系,
C、SELECTs.學號,姓名,課程名,成績FROM(studcntSJOINscoresc;ON
s.學號=sc.學號)JOINcoursecONsc.課程號=c.課程號;
D、SELECT學號,姓名,課程名,成績FROM(studentsJOINscoresc;ONs.學
號=5a學號)JOINcoursecONsc.課程號=c.課程號;WHERE院系='計算機
系,
標準答案:C
知識點解析:本題考查三個表之間的聯(lián)接查詢。在用SELECT語句進行聯(lián)接查詢,
要用JOIN關鍵字,ON關鍵字是兩表進行聯(lián)接的字段,對于本題來說,先以s.學
號=&c.學號進行學生表和選課表之間聯(lián)接.再以課程號=c.課程號進行選
課表和課程表之間的聯(lián)接。
2、設有學生表studeni(學號,姓名,性別,出生日期,院系)、課程表course(課程
號,課程名,學時)和選課表score(學號,課程號,成績),查詢所修課程成績都大
于等于85分的學生的學號和姓名,正確的命令是
A、SELECT學號,姓名FROMstudentsWHERENOTEXISTS(SELECT*FROM
scoresc;WHEREsc.學號=s.學號AND成績V85)
B、SELECT學號,姓名FROMstudentsWHERENOTEXISTS(SELECT次FROM
scoresc;WHEREsc.學號=s.學號AND成績>=85)
C、SELECT學號,姓名FROMstudents,scorescWHEREs.學號=sc.學號
AND成績>=85
D、SELECT學號,姓名FROMstudents,scorescWHEREs.學號=sc.學號
ANDALL成績>=85
標準答案:A
知識點解析:本題考查SELECT語句中關鍵字EXISTS的應用。EXISTS是用來判
斷子查詢中是否有或沒有結果返回,當EXISTS(查詢)有返回時,則返回真,否則
返回假。NOTEXISTS則相反。EXISTS做為WHERE條件時,是先對WHERE前
的主查詢進行查詢,然后用主查詢的結果一個一個的代入EXISTS的查詢進行判
斷,如果為真則輸出當前這一條主查詢的結果,否則不輸出。選
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新能源行業(yè)技術員面試題集與答案
- 深度解析(2026)《GBT 19163-2010牛蛙》
- 創(chuàng)新思維與問題解決方法創(chuàng)意設計含答案
- 年產xxx保險片項目可行性分析報告
- 帶式干燥機項目可行性分析報告范文
- 深度解析(2026)《GBT 18978.171-2024人-系統(tǒng)交互工效學 第171部分:軟件無障礙設計指南》
- 交通儀器儀表項目可行性分析報告范文
- 草皮項目可行性研究報告(立項備案申請)
- LED射燈項目可行性分析報告范文
- 特殊人群社區(qū)慢性病管理的質量控制策略
- 2025國家統(tǒng)計局齊齊哈爾調查隊招聘公益性崗位5人筆試考試參考試題及答案解析
- 個人素質與修養(yǎng)課件
- 男性性教育課件
- 藝術鑒賞教程課件
- 三級醫(yī)院臨床科室醫(yī)療質量管理考核標準
- 2025 年高職酒店管理(人力資源管理)試題及答案
- 危重患者的容量管理
- 2025秋四年級上冊勞動技術期末測試卷(人教版)及答案(三套)
- 2025年應急物資準備安全培訓試卷及答案:物資管理人員應急物資使用測試
- 電商售后客服主管述職報告
- 受控文件管理流程
評論
0/150
提交評論