1、1SQL 语句的复习SQL 特点(1)下列关于 SQL 语言特点的描述中,错误的是( C )。A)语言非常简洁 B)是一种一体化语言 C)是一种高度过程化的语 D)可以直接以命令方式交互使用,也可以程序方式使用(2)SQL 语言的核心是( C )。A)数据操纵 B)数据定义 C)数据查询 D)数据定义(3)VisualFoxPro 在 SQL 方面,不支持的功能是( A )。A)数据控制 B)数据操纵 C)数据查询 D)数据定义(4)下列选项中,不属于 SQL 特殊运算符的是( D )。A)GROUP B)ON C)ALL D)EMPTYSQL 查询语句(1)SQL 语句的查询语句是(D)A)
2、 INSERT B)UPDATE C) DELETE D) SELECT(2)标准的 SQL 基本查询语句的格式是( A )。A)SELECTFROMWHERE B)SELECTWHEREFROM C)SELECTWHEREGROUP BY D)SELECTFROMORDER BY(3)SQL 语句中,SELECT 语句中的 JOIN 是用来建立表间的联系短语应放在下列哪个短语之后( A )。A)FROM B)WHERE C)ON D)GROUP BY(4)SQL 语句中,SELECT 命令中的 JOIN 是用来建立表间的联系短语,连接条件应出现在下列哪个短语中(B)A)WHERE B)ON
3、C)HAVING D)INNER(5)SQL SELECT 语句中的 WHERE 用于说明( B )。A)查询数据 B)查询条件 C)查询分组 D)查询排序(6)SQL 语句可以进行多个查询的嵌套,但 Visual FoxPro 中只支持( B )层嵌套。A)1 B)2 C)3 D)无穷(7)在 Visual FoxPro 中,嵌套查询是基于( C )的查询A)2 个关系 B)3 个关系 C)多个关系 D)2 个或 3 个关系(8)以下有关 SELECT 语句的叙述中错误的是(B)A)SELECT 语句中可以使用别名B)SELECT 语句中只能包含表中的列及其构成的表达式C)SELECT 语句
4、规定了结果集中的顺序D)如果 FROM 短语引用的两个表有同名的列,则 SELECT 短语引用它们时必须使用表名前缀加以限定(9)在 Visual FoxPro 中,以下有关 SQL 的 SELECT 语句的叙述中,错误的是 ( D ) 。A)SELECT 子句中可以包含表中的列和表达式 B)SELECT 子句中可以使用别名 C)SELECT 子句规定了结果集中的列顺序 D)SELECT 子句中列的顺序应该与表中列的顺序一致 (10) 在 Visual FoxPro 中,SELECT 语句能够实现投影、选择和【 连接 】三种专门的关系运算。(11) 学生表中有“学号” 、 “姓名”和“年龄”三
5、个字段,下面 SQL 语句完成的操作:SELECT 学号 FROM 学生 ,称为(B)A) 选择 B) 投影 C) 连接 D) 并Distinct、orderby(top),group by,where(12) 在 SQL 的 SELECT 查询的结果中,消除重复记录的方法是(C) A) 通过指定主索引实现 B) 通过指定唯一索引实现 C) 使用 DISTINCT 短语实现 D) 使用 WHERE 短语实现(13) 设有学生表 XS(学号,课程号,成绩),用 SQL 语句检索每个学生的成绩总和的语句是:SELECT 学号,SUM(成绩) FROM XSGROUP BY 学号 (14) 在 SQ
6、L 的 SELECT 查询中,HAVING 字句不可以单独使用,总是跟在【 GROUP BY 】子句之后一起使2用。 (15) 在 SELECT 语句中,以下有关 HAVING 语句的正确叙述是 AA) HAVING 短语必须与 GROUP BY 短语同时使用 B) 使用 HAVING 短语的同时不能使用 WHERE 短语C) HAVING 短语可以在任意的一个位置出现 D) HAVING 短语与 WHERE 短语功能相同(16) SQL 的 SELECT 语句中, “HAVING”用来筛选满足条件的 DA) 列 B) 行 C) 关系 D) 分组(17) 在成绩表中,检索选修 3 门以上课程的
7、学生及格学科的总成绩。成绩表中包含学号、姓名、课程名和成绩 4 个字段。请将下列 SQL 语句补充完整。SELECT 学号,SUM(成绩) FROM 成绩表 WHERE 成绩=60 GROUP BY 学号_HAVING_COUNT(*)=3 (18) 在 SELECT 语句中使用 ORDER BY 是为了指定 BA查询的表 B查询结果的顺序 C查询的条件 D查询的字段(19) 在 SQL SELECT 查询中,为了使查询结果排序应该使用短语 DA) ASC B) DESC C) GROUP BY D) ORDER BY(20) 在 SQL SELECT 语句的 ORDER BY 短语中如果指定
8、了多个字段,则_C_。 A)无法进行排序 B)只按第一个字段排序 C)按从左至右优先依次排序 D)按字段排序优先级依次排序(21) SQL 用于显示部分查询结果的 TOP 短语,必须与下列哪个短语同时使用才有效( C )。A)HAVING B)DISTINCT C)ORDER BY D)GROUP BY(22) “歌手”表中有“歌手号” 、 “姓名” 、和“最后得分”三个字段, “最后得分”越高名次越靠前,查询前 10 名歌手的 SQL 语句是:SELECT *【TOP 10】FROM 歌手 ORDER BY 最后得分【DESC】 。 (23) 在成绩表中要求按“物理”降序排列,并查询前两名的
9、学生姓名,正确的命令是( D )。A)SELECT 姓名 TOP 2 FROM 成绩表 WHERE 物理 DESCB)SELECT 姓名 TOP 2 FROM 成绩表 FOR 物理 DESCC)SELECT 姓名 TOP 2 FROM 成绩表 GROUP BY 物理 DESCD)SELECT 姓名 TOP 2 FROM 成绩表 ORDER BY 物理 DESC(24) 下列短语中,与排序无关的短语是 CA)ASC B)DESC C)GROUP BY D)ORDER BY商店 (商店号, 商店名, 区域名, 经理姓名)商品 (商品号, 商品名, 单价)销售 (商店号, 商品号, 销售日期, 销售
10、数量)(25) 查询销售金额合计超过 20000 的商店,查询结果包括商店名和销售金额合计。正确命令是 DA)SELECT 商店名, SUM(销售数量*单价) AS 销售金额合计 FROM 商店, 商品, 销售WHERE 销售金额合计 20000B)SELECT 商店名, SUM(销售数量*单价) AS 销售金额合计20000 FROM 商店, 商品, 销售WHERE 商品.商品号=销售.商品号 AND 商店.商店号=销售.商店号C)SELECT 商店名, SUM(销售数量*单价) AS 销售金额合计 FROM 商店, 商品, 销售WHERE 商品.商品号=销售.商品号 AND 商店.商店号=
11、销售.商店号AND SUM(销售数量*单价)20000 GROUP BY 商店名D)SELECT 商店名, SUM(销售数量*单价) AS 销售金额合计 FROM 商店, 商品, 销售WHERE 商品.商品号=销售.商品号 AND 商店.商店号=销售.商店号GROUP BY 商店名 HAVING SUM(销售数量*单价)20000(26) 查询订单数在 3 个以上、订单的平均金额在 200 元以上的职员号。正确的 SQL 语句是 ( B )。A)SELECT 职员号 FROM 订单 GROUP BY 职员号 HAVING COUNT(*)3 AND AVG_金额200B)SELECT 职员号
12、FROM 订单 GROUP BY 职员号 HAVING COUNT(*)3 AND AVG(金额)200C)SELECT 职员号 FROM 订单 GROUP BY 职员号 HAVING COUNT(*)3 WHERE AVG(金额)200D)SELECT 职员号 FROM 订单 GROUP BY 职员号 WHERE COUNT(*)3 AND AVG_金额200查询结果的保存(27) 在 SQL SELECT 语句中为了将查询结果存储到永久表应该使用【INTO TABLE 】短语。3(28) 检索学生信息表中“籍贯”为“海南”的学生记录,将结果保存到表 xx 中,SQL 语句为:SELECT
13、* FROM 学生信息表 WHER E 籍贯=”海南”_INTO TABLE_xx (29) SQL 的 SELECT 语句中,与 INTO TABLE 等价的短语是 AA) INTO DBF B) TO TABLE C) INTO FORM D) INTO FILE(30) 在 SQL DELETE 语句中为了将查询结果存储到临时表中应该使用【 INTO CURSOR 】短语。(31) 在 SQL SELECT 语句中为了将查询结果存储到临时表应该使用短语 BA)TO CURSOR B)INTO CURSOR C)INTO DBF D)TO DBF(32) 检索学生成绩表中,总分在 600
14、分以上的学生记录,将结果保存到临时文件 SCORE 中,SQL 语句为:SELECT * FROM 学生成绩表 WHERE 总分=600_ INTO CURSOR _SCORE (33) 查询“读者”表的所有记录并存储于临时表文件 one 中的 SQL 语句是 AA)SELECT* FROM 读者 INTO CURSOR one B)SELECT* FROM 读者 TO CURSOR oneC)SELECT* FROM 读者 INTO CURSOR DBF one D)SELECT* FROM 读者 TO CURSOR DBF one(34) 与“SELECT * FROM 教师表 INTO
15、DBF A”等价的语句是 CA)SELECT * FROM 教师表 TO DBF A B)SELECT * FROM 教师表 TO TABLE AC)SELECT * FROM 教师表 INTO TABLE A D)SELECT * FROM 教师表 INTO A(35) 检索学生表中“性别”为“男”的学生记录,将结果保存到文本文件 xb 中,SQL 语句为:SELECT * FROM 学生表 WHERE 性别=“男”_TO FILE_xb (36) SELECT * FROM student【 TO 】FILE student 命令将查询结果存储在 student.txt 文本文件中。 (3
16、7) 将 SQL 的查询结果如果要追加到文本文件的尾部,应使用ADDITIVE短语加以说明,(38) SQL SELECT 的查询输出语句中,TO PRINTER短语表示将查询结果送到打印机。(39) 在当前目录下有数据表文件:“XSdbf” ,执行下列 SQL 语句后( D )。SELECT * FROM XS INTO CURSOR XS ORDER BY 学号A)生成一个按“学号”升序的临时表文件,将原来的 XSdbf 文件覆盖B)生成一个按“学号”降序的临时表文件,将原来的 XSdbf 文件覆盖C)不会生成新的排序文件,保持原数据表内容不变D)系统提示出错信息(40) SQL 查询语句
17、 SELECT * FROM 职工 TO FILE ZGdbf 语句的功能是 CA)将职工表中所有记录查询输出到永久性表 ZGdbf 中B)将职工表中所有记录查询输出到文本文件 ZGtxt 中 C)将职工表中所有记录查询输出到文本文件 ZGdbftxt 中D)语法错误单双字段条件的书写 =、and 、or (41) 检索职工表中年龄大于 50 的职工姓名,正确的命令是( D )。A)SELECT 姓名 WHERE 年龄50 B)SELECT 姓名 FROM 职工 FOR 年龄50C)SELECT 姓名 FROM 职工 SET 年龄50 D)SELECT 姓名 FROM 职工 WHERE 年龄5
18、0(42) 查询所有 1982 年 3 月 20 日以后(含)出生、性别为男的学生,正确的 SQL 语句是 AA) SELECT * FROM 学生 WHERE 出生日期=1982-03-20 AND 性别=”男”B) SELECT * FROM 学生 WHERE 出生日期=1982-03-20 OR 性别=”男”D) SELECT * FROM 学生 WHERE 出生日期1500B)SELECT 姓名,仓库名 FROM 仓库 WHERE 工资1500C)SELECT 姓名,仓库名 FROM 保管工,仓库 WHERE (工资1500) OR (保管工.仓库号=仓库.仓库号)D)SELECT 姓
19、名,仓库名 FROM 保管工,仓库 WHERE (工资1500) AND (职工.仓库号=仓库.仓库号)商店 (商店号, 商店名, 区域名, 经理姓名)商品 (商品号, 商品名, 单价)销售 (商店号, 商品号, 销售日期, 销售数量)(45) 查询在“北京”和“上海”区域的商店信息的正确命令是 BA)SELECT * FROM 商店 WHERE 区域名=北京 AND 域名名=上海B)SELECT * FROM 商店 WHERE 区域名=北京 OR 域名名=上海C)SELECT * FROM 商店 WHERE 区域名=北京 AND 上海D)SELECT * FROM 商店 WHERE 区域名=
20、北京 OR 上海(46) 查询商品单价在 10 到 50 之间、并且日销售数量高于 20 的商品名、单价、销售日期和销售数量,查询结果按单价降序。正确命令是 DA)SELECT 商品名 , 单价, 销售日期, 销售数量 FROM 商品 JOIN 销售WHERE (单价 BETWEEN 10 AND 50) AND 销售数量20 ORDER BY 单价 DESCB)SELECT 商品名, 单价, 销售日期 , 销售数量 FROM 商品 JOIN 销售WHERE (单价 BETWEEN 10 AND 50) AND 销售数量20 ORDER BY 单价C)SELECT 商品名, 单价, 销售日期
21、, 销售数量 FROM 商品 ,销售WHERE (单价 BETWEEN 10 AND 50) AND 销售数量20 ON 商品.商品号= 销售.商品号 ORDER BY 单价D)SELECT 商品名 , 单价, 销售日期, 销售数量 FROM 商品,销售 WHERE (单价 BETWEEN 10 AND 50)AND 销售数量20 AND 商品.商品号=销售.商品号 ORDER BY 单价 DESC(47) 给出在工作中心“WCl”或“WC2”工作,并且年龄大于 30 的职工编号,正确命令是( D )。A)SELECT 编号 FROM 车间 WHERE 年龄30 AND 工作中心=“WCl”
22、OR 工作中心=“WC2”B)SELECT 编号 FROM 车间 WHERE 年龄30 AND (工作中心=“WCl” AND 工作中心=“WC2”)C)SELECT 编号 FROM 车间 WHERE 年龄30 0R 工作中心=“WCl”OR 工作中心=“WC2”D)SELECT 编号 FROM 车间 WHERE 年龄30 AND (工作中心=“WCl”OR 工作中心=“WC2”)(48) 假设所有的选课成绩都已确定,显示“101”号课程成绩中最高的 10%的记录信息,正确的 SQL 命令是DA) SELECT * TOP 10 FROM 选课 ORDER BY 成绩 DESC WHERE 课
23、程号“101”B) SELECT * PERCENT 10 FROM 选课 ORDER BY 成绩 DESC WHERE 课程号“101”C) SELECT * TOP 10 PERCENT FROM 选课 ORDER BY 成绩 WHERE 课程号“101”D) SELECT * TOP 10 PERCENT FROM 选课 ORDER BY 成绩 DESC WHERE 课程号“101”(49) 下列关于 SQL 的超连接查询的描述中,说法不正确的是( A)。A)VisualFoxPro 支持超连接运算符“*=”和“=*”B)在 SQL 中可以进行内部连接、左连接、右连接和全连接C)SQL
24、的超连接运算符“*=”代表左连接, “=*”代表右连接D)即使两个表中的记录不满足连接条件,都会在目标表或查询结果中出现,只是不满足条件的记录对应部分为空值(50) SQL 语句中,集合的并运算是通过_UNION_运算符进行合并的。(51) 下列 SQL 语句能实现的功能是( B ), SELECT * FROM 仓库 WHERE 仓库号=“WHI”UNION SELECT * FROM 仓库 WHERE 仓库号=“WH2”A)查询在 WHl 或者 WH2 仓库中的职工信息 B)查询仓库号为 WHl 或者 WH2 的仓库信息C)查询即在仓库号为 WHl,又在仓库号为 WH2 工作的职工信息 D
25、)语句错误,不能执行NULL 的使用及其限制(52) 在 SQL 语句中空值用 【NULL 】表示。 (53) SQL 语句中进行空值运算时,需要使用到的短语是( C )。5A)NULL B)=NULL C)IS NULL D)IS NOT NULL(54) 如下命令查询雇员表中“部门号“字段为空值的记录SELECT * FROM 雇员 WHERE 部门号【 IS NULL 】 。 (55) 设有学生表文件,要查找学生表中还没有输入姓名的记录,则 SQL 语句为:SELECT * FROM 学生表 WHERE 姓名_ IS NULL _ (56) 在 SQL 语句中要查询表 s 在 AGE 字
26、段上取空值的记录,正确的 SQL 语句为:SELECT * FROM s WHERE 【 AGE IS NULL 】 。 (57) 查询有选课记录,但没有考试成绩的学生的学号和课程号,正确的 SQL 语句是 CA) SELECT 学号,课程号 FROM sc WHERE 成绩=“”B) SELECT 学号,课程号 FROM sc WHERE 成绩=NULLC) SELECT 学号,课程号 FROM sc WHERE 成绩 IS NULLD) SELECT 学号,课程号 FROM sc WHERE 成绩(58) 检索尚未确定的供应商的订单号,正确的命令是( C )。A)SELECT * FROM
27、 订购单 WHERE 供应商号 NULL B)SELECT * FROM 订购单 WHERE 供应商号=NULLC)SELECT * FROM 订购单 WHERE 供应商号 IS NULL D)SELECT * FROM 订购单 WHERE 供应商号 IS NOT NULL以下两题使用如下数据表:学生DBF:学号(C,8),姓名(C,6),性别(C,2)选课DBF:学号(C,8),课程号(C,3),成绩(N,3)(59) 检索还未确定成绩的学生选课信息,正确的 SQL 命令是 CA)SELECT 学生学号,姓名,选课课程号 FROM 学生 JOIN 选课;WHERE 学生学号选课学号 AND
28、选课成绩 IS NULLB) SELECT 学生学号,姓名,选课课程号 FROM 学生 JOIN 选课;WHERE 学生学号 =选课学号 AND 选课成绩NULL C) SELECT 学生学号,姓名,选课课程号 FROM 学生 JOIN 选课;ON 学生学号选课学号 WHERE 选课成绩 IS NULLD) SELECT 学生学号,姓名,选课课程号 FROM 学生 JOIN 选课;ON 学生学号选课学号 WHERE 选课成绩NULL(60) 查询尚未最后确定订购单的有关信息的正确命令是 AA) SELECT 名称,联系人,电话号码,订单号 FROM 客户,订购单;WHERE 客户.客户号=订购
29、单.客户号 AND 订购日期 IS NULLB) SELECT 名称,联系人,电话号码,订单号 FROM 客户,订购单;WHERE 客户.客户号=订购单.客户号 AND 订购日期= NULLC) SELECT 名称,联系人,电话号码,订单号 FROM 客户,订购单;FOR 客户.客户号=订购单.客户号 AND 订购日期 IS NULLD) SELECT 名称,联系人,电话号码,订单号 FROM 客户,订购单;FOR 客户.客户号=订购单.客户号 AND 订购日期= NULL字符匹配符的使用,%,_,betweenand ,函数 like 的使用(61) 在 SQL 语句的 SELECT 中,字
30、符串匹配运算符用LIKE表示,可用来表示 0 个或多个字符。(62) 在 SQL 的 WHERE 子句的条件表达式中,字符串匹配(模糊查询) 的运算符是_%或_ _。(63) 检索当前表“学生”表中,全部姓“王”的学生记录,SQL 语句为:SELECT * FROM 学生 WHERE 姓名LIKE“王%” (64) 查询“学生成绩”表中所有不是姓“李”的学生记录,完成下列 SQL 语句:SELECT*FROM 学生成绩 WHERE 姓名_NOT LIKE _“李” (65) 设有 SC(学号,课程号,成绩)表,下面 SQL 的 SELECT 语句检索成绩高于或等于平均成绩的学生的学号6SELE
31、CT 学号 FROM SC WHERE 成绩 =( SELECT【 AVG(成绩)】FROM SC) (66) 在 SQL 语言中,用于对查询结果计数的函数是【 count() 】 。 (67) 设有学生表(姓名,班级名称),用 SQL 语句检索每个班级的学生总人数的语句是:SELECT 班级名称,_count(姓名)_ AS 人数 FROM 学生表 GROUP BY 班级名称 (68) 利用 SQL 语句统计选修了“日语”课程的学生人数请将下列语句补充完整SELECT_ count(*)_as 学生人数_FROM 选课表 WHERE 课程名=“日语” (69) SQL 的 SELECT 语句
32、中,用来定义一个区间范围的特殊运算符是betweenand。 (70) 在 SQL 语句中,与表达式“年龄 BETWEEN 12 AND 46”功能相同的表达式是 DA)年龄=12 OR=12 AND=12OR 年龄=12 AND 年龄=70 OR 成绩=70 OR =70 AND =1000 下列与该语句等价的是( )。A)SELECT * FROM 工资表 WHERE 基本工资 BETWEEN 1000 AND 3000 B)SELECT * FROM 工资表 WHERE 基本工资 BETWEEN 3000 AND 1000C)SELECT * FROM 工资表 WHERE 基本工资 FR
33、OM 1000 INTO 3000D)SELECT * FROM 工资表 WHERE 基本工资 FROM 3000 INTO 1000常用字符串函数、日期函数的使用 (74) 将“学生”表中学号左 4 位为“2010” 的记录存储到新表 new 中的命令是:SELECT * FROM 学生 WHERE【 LEFT(学号,4) 】=“2010” 【 into 】DBF new。(75) 设有订单表 order(其中包括字段:订单号,客户号,职员号,签订日期,金额),查询 2007 年所签订单的信息,并按金额降序排序,正确的 SQL 命令是:AASELECT * FROM order WHERE
34、YEAR(签订日期)=2007 ORDER BY 金额 DESCBSELECT * FROM order WHILE YEAR(签订日期)=2007 ORDER BY 金额 ASCCSELECT * FROM order WHERE YEAR(签订日期)=2007 ORDER BY 金额 ASCDSELECT * FROM order WHILE YEAR(签订日期)=2007 ORDER BY 金额 DESC嵌套、量词和谓词查询商店 (商店号, 商店名, 区域名, 经理姓名)商品 (商品号, 商品名, 单价)销售 (商店号, 商品号, 销售日期, 销售数量)(76) 查询单价最高的商品销售情
35、况,查询结果包括商品号、商品名、销售日期、销售数量和销售金额。正确命令是 AA)SELECT 商品.商品号, 商品名, 销售日期, 销售数量, 销售数量*单价 AS 销售金额FROM 商品 JOIN 销售 ON 商品.商品号=销售.商品号 WHERE 单价=(SELECT MAX(单价) FROM 商品)B)SELECT 商品.商品号, 商品名, 销售日期, 销售数量, 销售数量*单价 AS 销售金额FROM 商品 JOIN 销售 ON 商品.商品号=销售.商品号 WHERE 单价=MAX(单价)C)SELECT 商品.商品号, 商品名, 销售日期, 销售数量, 销售数量*单价 AS 销售金额
36、FROM 商品 JOIN 销售 WHERE 单价=(SELECT MAX(单价) FROM 商品)7D)SELECT 商品.商品号, 商品名, 销售日期, 销售数量, 销售数量*单价 AS 销售金额FROM 商品 JOIN 销售 WHERE 单价=MAX(单价) (77) 与:SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分ALL(SELECT 最后得分 FROM;歌手 WHERE SUBSTR(歌手号, 1,1)=“2” )等价的 SQL 语句是_A_。A)SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=;(SELECT MAX(最后
37、得分)FROM 歌手 WHERE SUBSTR (歌手号,1,1)=“2”)B)SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=;(SELECT MIN(最后得分)FROM 歌手 WHERE SUBSTR (歌手号,1,1)=“2”)C)SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=;ANY(SELECT MAX(最后得分)FROM 歌手 WHERE SUBSTR (歌手号,1,1)=“2”)D)SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=;SOME(SELECT MAX(最后得分)FROM 歌手
38、WHERE SUBSTR (歌手号,1,1)=“2”)(78) 在成绩表中,查找物理分数最高的学生记录,下列 SQL 语句的空白处应填入的是( D )SELECT * FROM 成绩表 WHERE 物理=_(SELECT 物理 FROM 成绩表)A)SOME B)EXISTS C)ANY D)ALL(79) 设有职工表文件,在职工表中查找奖金最高的职工记录,完成下列 SQL 语句。SELECT * FROM 职工表 WHERE 奖金=_ALL_(SELECT 奖金 FROM 职工表) (80) 嵌套查询命令中的_IN_,相当于集合运算符号。 (81) 当前目录下有 XUESH.dbf 和 CH
39、JI.dbf 两个表文件,要求查找同时选修了课程号为“9801”和“9802”的学生姓名,下列 SQL 语句的空白处应填入的语句为( )。(82) SELECT 姓名 FROM XUESH,CHJI WHERE XUESH学号=CHJI学号 AND 课程号=“9801”AND 姓名_A_;(SELECT 姓名 FROM XUESH,CHJI WHERE XUESH学号=CHJI学号 AND 课程号=“9802“)A)IN B)EXISTS C)LIKE D)ALL(83) SQL 语句:SELECT * FROM 仓库表 WHERE NOT EXISTS (SELECT * FROM 职工表
40、WHERE 仓库号=仓库.仓库号)该语句等价于:SELECT * FROM 仓库表 WHERE 仓库号_NOT IN_(SELECT 仓库号 FROM 职工表) (84) 设有 S(学号,姓名,性别)和 SC(学号,课程号,成绩)两个表,下面的 SQL 的 SELECT 语句检索选修的每门课程的成绩都高于或等于 85 分的学生的学号、姓名和性别。 SELECT 学号,姓名,性别 FROM S WHERE【 exists 】(SELECT * FROM SC WHERE SC.学号=S.学号 AND 成绩90)B) SELECT * FROM 学生 WHERE 学号 NOT IN(SELECT
41、学号 FROM 选课 WHERE 成绩90)(86) 检索那些城市至少有一个仓库的职工年龄在 60 以上,正确的命令是( B )。A)SELECT 城市 FROM 仓库 WHERE 仓库号 IN SELECT 仓库号 FROM 职工 WHERE 年龄60B)SELECT 城市 FROM 仓库 WHERE 仓库号 IN (SELECT 仓库号 FROM 职工 WHERE 年龄60)C)SELECT 仓库号 FROM 职工 WHERE 年龄60 IN SELECT 城市 FROM 仓库 WHERE 仓库号D)SELECT 仓库号 FROM 职工 WHERE 年龄60 IN (SELECT 城市 F
42、ROM 仓库 WHERE 仓库号)(87) 设有选课表,表中包含字段有:学号 N(6),课程号 C(6),成绩 N(4)。要查询每门课程的学生人数,要求显示课程号和学生人数,对应的 SQL 语句为:SELECT 课程号,COUNT(学号) AS 学生人数 FROM 选课表 GROUP BY_课程号_ (88) 有学生表和班级表文件,检索哪些班级中至少有一个学生的总分是大于 700 的,正确的命令是( B )。8A)SELECT 班级名称 FROM 班级表 WHERE 班级号 IN SELECT 班级号 FROM 学生表 WHERE 总分700B)SELECT 班级名称 FROM 班级表 WHE
43、RE 班级号 IN (SELECT 班级号 FROM 学生表 WHERE 总分700)C)SELECT 班级名称 FROM 班级表 WHERE 学号 IN SELECT 学号 FROM 学生表 WHERE 总分700D)SELECT 班级名称 FROM 班级表 WHERE 学号 IN (SELECT 学号 FROM 学生表 WHERE 总分700) (89) 当前目录下有“选课表”文件,查找既选修了“计算机” ,又选修了“日语”的学生号,则语句为:SELECT A.学号 FROM 选课表 A,选课表 B WHERE A.学号=B. 学号 AND A.课程名称=“计算机”AND_课程名称=”日语
44、”_(90) 设有学生选课表 SC(学号,课程号,成绩 ),用 SQL 检索同时选修课程号为”C1”和”C5”的学生的学号的正确命令是 DA) SELECT 学号 FROM SC WHERE 课程号=C1AND 课程号=C5B) SELECT 学号 FROM SC WHERE 课程号=C1AND 课程号=(SELECT 课程号 FROM SC WHERE 课程号=C5)C) SELECT 学号 FROM SC WHERE 课程号=C1AND 学号=(SELECT 学号 FROM SC WHERE 课程号=C5)D) SELECT 学号 FROM SC WHERE 课程号=C1AND 学号 IN
45、 (SELECT 学号 FROM SC WHERE 课程号=C5)(91) 下列对 SQL 的嵌套查询排序的描述中,说法正确的是( B )。 A)既能对外层查询排序,也能对内层查询排序 B)只能对外层查询排序,不能对内层查询排序C)只能对内层查询排序,不能对外层查询排序 D)既不能对外层查询排序,也不能对内层查询排序SQL 定义语句(1)下列关于 SQL 对表的定义的说法中,正确的选项是( C )。A)利用 ALTER TABLE 来定义一个新的数据表结构B)SQL 的表定义语句定义自由表的域完整性、字段有效性规则等C)SQL 只能对数据库表实现其完整性、有效性规则等信息的设置D)SQL 的表
46、定义语句只能定义表中的候选索引、惟一索引和普通索引,不能定义主索引(2)在 Visual FoxPro 中,下列关于 SQL 表定义语句(CREATE TABLE)的说法中错误的是 DA)可以定义一个新的基本表结构 B)可以定义表中的主关键字C)可以定义表的域完整性,字段有效性规则等D)对自由表,同样可以实现其完整性,有效性规则等信息的设置(3)使用 SQL 的 CREATE TABLE 语句定义表结构时,用 _ PRIMARY KEY _短语说明关键字。(4)在 Visual FoxPro 数据库中创建表的 CREATE TABLE 命令中定义主索引,实现实体完整性规则的短语是 C A) F
47、OREIGN KEY B) DEFAULT C) PRIMARY KEY D) CHECK(5)利用 SQL 语句的定义功能,建立一个学生表文件,其中为学号建立主索引,年龄的默认值为 18,语句格式为:CREATE TABLE 学生(学号 C(5) _ PRIMARY KEY _ 年龄 I DEFAULT l8) (6) “教师表”中有“职工号” 、 “姓名”和“工龄”字段,其中“职工号”为主关键字,建立“教师表”的SQL 命令是 DA) CREATE TABLE 教师表(职工号 C(10)PRIMARY 姓名 C(20) ,工龄 I)B) CREATE TABLE 教师表(职工号 C(10)
48、FOREIGN 姓名 C(20) ,工龄 I)C) CREATE TABLE 教师表(职工号 C(10)FOREIGN KEY, 姓名 C(20) ,工龄 I)D) CREATE TABLE 教师表(职工号 C(10)PRIMARY KEY, 姓名 C(20) ,工龄 I)(7)在 Visual FoxPro 中,使用 SQL 的 CREATE TABLE 语句建立数据库表时,使用 【 CHECK 】 子句说明有效性规则。 (8)下列与修改表结构相关的命令是 BA) INSERT B) ALTER C) UPDATE D) CREATE(9)已有“歌手”表,将该表中的“歌手号”字段定义为候选索引、索引名是 temp,正确的 SQL 语句是:9_ALTER_ TABLE 歌手 ADD UNIQUE 歌手号 TAG temp (10) 在 SQL 的 ALTER TABLE 语句中,为了增加一个新的字段应该使用短语 DA)CREATE B)APPEND C)COLUMN D)ADD(11) 假设有 student 表,可以正确添加字段“平均分数”的命令是 AA) ALTER TABLE student ADD 平均分