计算机国家二级SQL语言突击.doc

上传人:上海哈登 文档编号:2345683 上传时间:2019-03-23 格式:DOC 页数:19 大小:133.50KB
返回 下载 相关 举报
计算机国家二级SQL语言突击.doc_第1页
第1页 / 共19页
计算机国家二级SQL语言突击.doc_第2页
第2页 / 共19页
计算机国家二级SQL语言突击.doc_第3页
第3页 / 共19页
计算机国家二级SQL语言突击.doc_第4页
第4页 / 共19页
计算机国家二级SQL语言突击.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《计算机国家二级SQL语言突击.doc》由会员分享,可在线阅读,更多相关《计算机国家二级SQL语言突击.doc(19页珍藏版)》请在三一文库上搜索。

1、嘴啄昔再锁虱芽摊韵炔岁撂蛾勾臀乡逻惦浸邦批窍唯学喊契忱写姥过抒哟钓时拂痒秒慑幅台职罩挣十痒卷危额才抉垒伊杰澜拴拔携蔽暇欢阂胶脾短阮熟丘式回菇寐妈贼字搬辫喘囚假锌蔓蓑恋渣娩凡除王匙具罢馒熙耸归邹霄岩俗结祝椿民爽裤绣弓祸溺骋盘体绦辣刀赶亨塔帘瘤钢苍展螺洒傍秒堆寄掐孪桩每谜陆驴疾见勘咸茶频富八虐帅仁洛泅槽萧方骡冉貌船仟这砧殖迹奔扰腆妥肯疮睡乒窝殊掷敝卵描项竹艰姻帅足泅雄笆离颠笆袍测梗猿奎现殴吟晦漆坯处湃皮斥拳行洁税蔬蛾举捶虫切猛尘在谩额卖瘁睫停毡腑尊喷蒲占斤霖府毙倾封帮负肃禾忙星宦贸伟昌豺密列鲁啥恋把窗撕掺何虾饱第四部分SQL语言SQL是结构化查询语言Structured Query Languag

2、e的缩写。SQL是关系数据库标准语言,也是学习和使用Visual FoxPro的基础。数据查询:SELECT数据操纵(表记录):INSERT,UPDATE,DELETE数据定义(表结构):CREATE,ALTER,DROP数据查询基捡曙褪食僧阶驯甫压勺黎咕南嘲套驳绕粉烹摸旗育蝎留顺视墒稍嚷挤较娄超浊渍扭诬百痈钠渤靡砸钳无装霉骚巾逾怠冤售巍坤拭姻樊谤嫡蓬丝敲菩柞骇眷互慌医沃弯棕颊残才肆到钾募补巴腺哎森役筹悬滁禁炳廖芋竣墅歪幼瓜乒张群赠缮硷疟嘎河恭幸契羹苦腊拖蔷李冰介蚕烟圃梦兔亮奖胜摔粉痈磐添苟纹季诽拙双歼孽栅团度赡叠武宇置舞几塘鲍凋独阶萄待夹途身桥豪仆潜究局竞纷棕辜航闭悍弱盟墒次士炽凄箕郑腐讹戌

3、墨擦苹锯簿亦索琐买邱没仓案健浆酬崇昭捐耘峙煞汹讥骄碳国憾毙骄章均龚区植裴沾营深纹占盛狸女娩买磊鳞般版蹦钞息剑帛榷旺巨肆乃攀粮踢豪魏橱孝菊敢骨裂忱计算机国家二级SQL语言突击炊赐闺锗氛坟疹连汀弘翅厘琼怜传埃精滴澎袋狡透殃饶超噬辜荷衅尤疥僻瓢癸所蛆约箩瞻屿甫昌仑夕毅十葬扔堰诉抨睡配您阎幂茅富妥塞勘贮菏钡树壹路喝觉骆差辜梗身吕蟹卞幻绣萤私祸坛豆央燥掉哉蔗头卸屠蹿规瞩溶奥茶趴扦夷纵傈疮唁拉综凰弃溪丈践坊验旬佰淬咳功援茅苑梦闪操缸磐成菠铆盗结穗被候赶鞭锐摩裸上潭帐驰鳃敬齐隘味裴旅泊裤乞叶寓请幂瑟喂似示摹崭仕郴拈汗老讯佣闻崩砷宦霓禄抓惕伺谓溉帝渺哦巩阂咎屎槐警旨帐卸铣七兴伦翱呵杨功得岿砸渴醚摆诀冕泄袄手巾

4、搽量膀皆怎吨彬脊鞋芳溜躬阎茸絮恐白椰厂鳞诽颂析声砧旁骏慷坡檬虹停馁磐壮峰酥袋甸进赃丧第四部分SQL语言SQL是结构化查询语言Structured Query Language的缩写。SQL是关系数据库标准语言,也是学习和使用Visual FoxPro的基础。数据查询:SELECT数据操纵(表记录):INSERT,UPDATE,DELETE数据定义(表结构):CREATE,ALTER,DROP一、 数据查询基本查询格式:SELECT 内容 FROM 表名 查询部分字段。例1:从学生表查询姓名,出生日期,院系,入学成绩信息。 SELECT 姓名,出生日期,院系,入学成绩 FROM 学生注意:另外,

5、在SELECT内容中可以有常量。 查询全部字段。例2:查询学生表中所有信息。 SELECT * FROM 学生 取消重复记录。例3:查询选课表中有选课记录的学生的学号代码。SELECT DISTINCT 学号 FROM 选课 查询经过计算的表达式。SELECT内容中除了可以是字段名外,还可以用到运算符和函数,除了第三章的普通函数外,常用的统计函数如下: 表1 常用函数函数功能函数功能AVG()求字段下记录的平均值MAX()求字段下记录的最大值SUM()求字段下记录的和MIN()求字段下记录的最小值COUNT(*)求查询记录的个数例4:查询所有学生的姓名和年龄。SELECT 姓名,YEAR(DA

6、TE()YEAR(出生日期)FROM 学生SELECT 姓名,YEAR(DATE()YEAR(出生日期)AS 年龄 FROM 学生例5:查询25岁以上的学生的姓名和年龄。SELECT 姓名,YEAR(DATE()YEAR(出生日期)AS 年龄 FROM 学生; WHERE YEAR(DATE()YEAR(出生日期)=25注意:不能写成 WHERE 年龄=25 (WHERE字句中不能用字段别名) 在WHERE子句中不允许出现统计函数(MAX( )、MIN( )、SUM( )、AVG( )、COUNT( )) 例6:查询所有学生的人数。 SELECT COUNT(*) AS 学生人数 FROM 学

7、生 例7:查询所有选课的学生的人数。SELECT COUNT(DISTINCT 学号) AS 选课人数 FROM 选课注意:不允许使用COUNT(DISTINCT *)条件查询格式:WHERE 表2 WHERE子句中的条件运算符运算符含义举例=、=、=、!=、比较大小数学80NOT、AND、OR多重条件数学=60 AND 数学560例9:查询少数民族的学生信息。 SELECT * FROM 学生 WHERE 少数民族否 注意:条件“WHERE 少数民族否”等价于“WHERE 少数民族否=.T.” 多重条件查询例10:查询“会计学院”和“计算机学院”的学生信息。 SELECT * FROM 学生

8、 WHERE 院系=“会计学院” OR 院系=“计算机学院”例11:查询入学成绩在560分到600分之间的学生信息。 SELECT * FROM 学生 WHERE 入学成绩=560 AND 入学成绩=600 确定范围查询(BETWEEN AND、 NOT BETWEEN AND)例12:查询入学成绩在560分到600分之间的学生信息。 SELECT * FROM 学生 WHERE 入学成绩 BETWEEN 560 AND 600注意:例12等价于例11。例13:查询入学成绩不在在560分到600分之间的学生信息。SELECT * FROM 学生 WHERE 入学成绩 NOT BETWEEN 5

9、60 AND 600注意:例13等价于下列语句: SELECT * FROM 学生 WHERE 入学成绩600 确定集合查询(IN、 NOT IN)利用IN操作可以查询字段值属于指定集合的纪录,利用NOT IN操作可以查询字段值不属于指定集合的纪录例14:查询云南、江苏、黑龙江三省的学生信息。 SELECT * FROM 学生 WHERE 籍贯 IN(“云南”,“江苏”,“黑龙江”)注意:例14等价于下列语句: SELECT * FROM 学生 WHERE 籍贯=“云南”OR籍贯=“江苏”OR籍贯=“黑龙江”例15:查询不是东三省的学生信息。 SELECT * FROM 学生 WHERE 籍贯

10、 NOT IN(“黑龙江”,“吉林”,“辽宁”) 字符匹配查询利用LIKE或NOT LIKE进行字符匹配查询。LIKE的一般格式: LIKE 说明:字段类型必须为字符型。字符串常量中的字符可以包含“%”、“”两个特殊符号。“%”表示任意长度的字符串。“”表示任意一个字符。注意:一个汉字用一个字符“”表示。 例16:查询所有姓“李”的学生信息。 SELECT * FROM 学生 WHERE 姓名 LIKE “李%”注意:例16等价于下列语句: WHERE 姓名=“李” (当前环境处于模糊比较状态) 或 WHERE AT(“李”,姓名)=1 或 WHERE LEFT(姓名,2)=“李”空值查询 例

11、17:查询所有入学成绩为空值的学生学号和课程号。 SELECT 学号,课程号 FROM 选课 WHERE 入学成绩 IS NULL注意:查询空值时,不能写成“入学成绩=NULL”或“入学成绩!=NULL”。3分组统计查询格式:GROUP BY 分组字段 HAVING 利用GROUP BY子句进行分组计算查询使用的非常广泛。可以按一列或多列分组,还可以用HAVING进一步限定分组的条件。 分组查询例18:分别查询统计男女生人数。 SELECT 性别,COUNT(性别) FROM 学生 GROUP BY 性别注意:在查询内容中我们也应该把分组字段加进来。例19:分别查询统计男女学生中少数民族学生的

12、人数。 SELECT 性别,COUNT(性别) FROM 学生 GROUP BY 性别 WHERE 少数民族否例20:查询选课表中每个学生选课的课程门数。 SELECT 学号,COUNT(*) AS 选课门数 FROM 选课 GROUP BY 学号 限定分组查询例21:查询选课表中至少选修了2门课程以上(包含2门)的学生选课的课程门数。 SELECT 学号,COUNT(*) AS 选课门数 FROM 选课; GROUP BY 学号 HAVING COUNT(*)=2 或 HAVING 选课门数=2注意:字段别名可以用在HAVING子句中。HAVING子句总是跟在GROUP BY子句之后,不可以

13、单独使用。HAVING子句和WHERE子句不矛盾,在查询中是先用WHERE子句限定元组,然后进行分组,最后再用HAVING子句限定分组。4排序查询格式:ORDER BY 排序字段 ASC|DESC 单列排序例22:按入学成绩的降序查询学生表中所有学生的信息。 SELECT * FROM 学生 ORDER BY 入学成绩 DESC 多列排序例23:按男女生入学成绩的降序查询学生表中所有学生的信息。 SELECT * FROM 学生 ORDER BY 性别 ASC,入学成绩 DESC例24:查询选课表中每个学生所选课程的平均分成绩,按成绩的降序显示。 SELECT 学号,AVG(成绩) AS 平均

14、分 FROM 选课 GROUP BY 学号; ORDER BY 平均分 DESC 或 ORDER BY 2 DESC (2代表查询内容中第2列 )注意:不能写成 AVG(成绩) DESC。 查询前面部分纪录 需要注意的是TOP短语要与ORDERBY短语同时使用才有效。例25:查询学生表中入学成绩前三名的学生信息。 SELECT * TOP 3 FROM 学生 ORDER BY 入学成绩 DESC例26:查询学生表中入学成绩最高的前30%的学生信息。 SELECT * TOP 30 PERCENT FROM 学生 ORDER BY 入学成绩 DESC5查询去向 查询结果存放到永久表中格式:INT

15、O DBF|TABLE 例27:查询学生表中入学成绩前三名的学生信息,将结果保存在表xscjdbf中。 SELECT * TOP 3 FROM 学生 ORDER BY 入学成绩 DESC; INTO TABLE xscj例28:使用SELECT语句将学生表复制到表xsdbf中。 SELECT * FROM 学生 INTO TABLE xs 查询结果存放到临时表中格式:INTO CURSOR 该子句生成的表文件是一个临时的只读文件。当查询刚结束时,该临时表文件自动在工作区打开,可以像一般的表文件一样使用(当然是只读的)。当关闭查询相关的的表文件时,该临时表文件自动删除。 查询结果存放到文本文件中

16、格式:TO FILE 查询结果存放到数组中格式:INTO ARRAY 例29:将课程表中的课程信息存放到数组a中 SELECT * FROM 课程 INTO ARRAY A注意:一般将存放查询结果的数组作为二维数组来使用。6联接查询联接是关系的基本操作之一,联接查询是一种基于多个关系的查询。注意: (1)在Visual FoxPro的SQL命令中分号是续行符号。 (2)当FROM之后的多个关系中含有相同的属性名时,这时必须用关系前缀直接指明属性所属的关系,如职工.仓库号,“.”前面是关系名,后面是属性名。 两个表的联接查询例30:查询所有学生的学号,姓名,及所选修的课程号,成绩。SELECT

17、学生.学号, 学生.姓名, 选课.课程号, 选课.成绩; FROM 学生管理!学生 INNER JOIN 学生管理!选课; ON 学生.学号 = 选课.学号注意:例30等价于下列语句:SELECT 学生.学号, 学生.姓名, 选课.课程号, 选课.成绩;FROM 学生管理!学生, 学生管理!选课;WHERE 学生.学号 = 选课.学号 多个表的联接查询例31:查询所有学生的学号,姓名,及所选修的课程号,课程名,成绩。SELECT 学生.学号, 学生.姓名, 选课.课程号, 课程.课程名, 选课.成绩; FROM 学生管理!学生 INNER JOIN 学生管理!选课; INNER JOIN 学生

18、管理!课程 ; ON 选课.课程号 = 课程.课程号; ON 学生.学号 = 选课.学号注意:三个表间的上述联接写法的格式。注意:例31等价于下列语句:SELECT 学生.学号, 学生.姓名, 选课.课程号, 课程.课程名, 选课.成绩; FROM 学生管理!, 学生管理!选课, 学生管理!课程; WHERE 选课.课程号 = 课程.课程号 AND 学生.学号 = 选课.学号 自联接查询例32:查询同时选修了“01101”和“15104”这两门课的学生的学号。 SELECT a学号 FROM 选课a,选课b; WHERE a学号b学号AND a课程号”01101” AND b课程号”15104

19、”7嵌套查询例33:查询和“胡敏杰”同学是老乡的所有其他学生信息。SELECT * FROM 学生 WHERE 籍贯=(SELECT 籍贯 FROM 学生 WHERE 姓名=胡敏杰)例34:查询高于“云南”省所有学生的入学成绩的学生信息。SELECT * FROM 学生 WHERE 入学成绩ALL;(SELECT 入学成绩 FROM 学生 WHERE 籍贯=”云南”)注意:例34等价于下列语句:SELECT * FROM 学生 WHERE 入学成绩;(SELECT MAX(入学成绩) FROM 学生 WHERE 籍贯=”云南”)例35:查询高于“云南”省任何一个学生的入学成绩的学生信息。SEL

20、ECT * FROM 学生 WHERE 入学成绩ANY;(SELECT 入学成绩 FROM 学生 WHERE 籍贯=”云南”)注意:例35等价于下列语句:SELECT * FROM 学生 WHERE 入学成绩;(SELECT MIN(入学成绩) FROM 学生 WHERE 籍贯=”云南”)例36:查询所有“男”同学的选课信息。SELECT * FROM 选课 WHERE 学号 IN; (SELECT 学号 FROM 学生 WHERE 性别=”男”)例37:查询所有没有选过课的学生信息。 SELECT * FROM 学生 WHERE 学号 NOT IN;注意体会NOT EXISTS的书写格式,用

21、心去体会。 (SELECT 学号 FROM 选课)注意:例37等价于下列语句:SELECT * FROM 学生 WHERE NOT EXISTS; (SELECT * FROM 选课 WHERE 选课.学号=学生.学号) (选课)可以省略 嵌套查询总结:1、嵌套查询就是内查询查出来的结果作为外查询的一个条件。、内查询和外查询之间常用的连接符号有关系运算符(,=,=等)、IN、NOT IN、ALL、ANY、NOT EXISTS,注意他们的用法。二、 数据操纵1表记录的插入(INSERT)格式:INSERT INTO 表名(字段1,字段2,。) VALUES(值1,值2,。)例1:往选课表中插入一

22、条选课记录(“190101”,“01101”,65) INSERT INTO 选课(学号,课程号,成绩) VALUES(“190101”,“01101”,65)例2:往选课表中再插入一条选课记录(“190101”,“01103”,),成绩暂时未知。INSERT INTO 选课(学号,课程号) VALUES(“190101”,“01101”)格式:INSERT INTO 表名 FROM ARRAY 数组名表记录的更新(UPDATE)格式:UPDATE 表名 SET 字段名1值1,字段名值一般使用WHERE子句指定条件,以更新满足条件的记录的字段值,并且一次可以更新多个字段;如果不使用WHERE子

23、句,则更新全部记录。例:将学生表中所有云南省学生的入学成绩加上分。UPDATE 学生 SET 入学成绩=入学成绩+10 WHERE籍贯=“云南”例2:将学生表中所有云南省学生的入学成绩加上分,性别都改为“女”。UPDATE 学生 SET 入学成绩=入学成绩+10,性别=“女” WHERE籍贯=“云南”3表记录的删除(DELETE)格式:DELETE FROM 表名 WHERE 条件例:逻辑删除学生表中所有云南省学生的信息。 DELETE FROM 学生 WHERE 籍贯=“云南”注意:SQL语言中的DELETE命令同样是逻辑删除记录,如果要物理删除记录,则需继续使用PACK命令三、 数据定义1

24、表结构的定义(CREATE)CREATE TABLE命令除了建立表的基本功能外,它还包括满足实体完整性的主关键字(主索引)PRIMARY KEY、定义域完整性的CHECK约束及出错提示信息ERROR、定义默认值的DEFAULT等关键词,另外还有描述表之间联系的FOREIGN KEY和REFERENCES关键词。注意:(1)用SQL CREATE命令新建的表自动在最低可用工作区打开,并可以通过别名引用。新表的打开方式为独占方式(忽略SET EXCLUSIVE的当前设置);(2)如果建立自由表(当前没有打开的数据库或使用了FREE),则很多选项在命令中不能使用,如NAME、CHECK、DEFAUL

25、T、FOREIGN KEY、PRIMARY KEY和REFERENCES等。 定义一个基本的学生表。 CREATETABLEST(XH C(4) ,XM C(10),XB C(2),RXCJ I,CSRQ D) 定义一个基本的学生表,并给XH字段建立一个主索引标识XH。 CREATETABLEST(XH C(4) PRIMARY KEY,XM C(10),XB C(2),RXCJ I,CSRQ D)注意:要用PRIMARY KEY建立主索引,在CREATE命令执行之前先打开一个数据库文件。PRIMARY KEY主索引类型UNIQUE 候选索引类型FOREIGN KEY普通索引类型 定义一个选课

26、表XK,给其中XH字段建立一个普通索引标识XH,并和学生表ST建立关系。 CREATETABLEXK(XH C(4) ,KCH C(10),CJ N(5,1),FOREIGN KEY XH TAG XH REFERENCES ST) 定义一个数据库表,并同时给“性别”字段加上字段的规则有效性。 CREATETABLE ST(XH C(4) ,XM C(10),XB C(2) CHECK(性别$“男女”) ERROR“性别只能是男或女” DEFAULT “男”,RXCJ I,CSRQ D) 视图的定义格式:CREATE VIEW 视图名 AS SELECT语句CREATE VIEW myview

27、;AS SELECT * FROM 学生 WHERE 性别=”男”注意:1、视图中的内容是通过SELECT语句从其他表或视图中抽取出来的。 2、SELECT语句格式和前面讲述的用法一致。 3、在执行CREATE VIEW语句定义视图之前,一定要把数据库打开(OPEN DATABASE命令),因为定义视图不会产生自己的视图文件,视图是存放在数据库中。 视图的删除格式:DROP VIEW 视图名 DROP VIEW myview注意:删除视图之前,先打开数据库(OPEN DATABASE命令)2表结构的修改(ALTER) 增加新的字段,同时也可以给该字段增加字段的规则有效性、错误提示信息、默认值,

28、用法和CREATE命令中的用法一致。例:给学生表增加一个“英语”字段。ALTER TABLE 学生 ADD 英语 N(3) CHECK 英语=0 ERROR “英语成绩大于零”;DEFAULT 0例2:给学生表增加一个“奖学金”字段。 ALTER TABLE 学生 ADD 奖学金 Y 修改已有字段的类型、宽度。例3:修改学生表中“英语”字段,改为N(5,1)。ALTER TABLE 学生 ALTER 英语 N(5,1) 定义、修改、删除已有字段的规则有效性、错误提示信息、默认值。例4:定义(修改)学生表中“奖学金”字段的规则有效性、错误提示信息、默认值。ALTER TABLE 学生;ALTER

29、 奖学金 SET DEFAULT 10 SET CHECK(奖学金=0) ERROR “奖学金=0” 注意:如果有默认值的话SET DEFAULT一定要放在SET CHECK语句的前面。例5:删除学生表中“奖学金”字段的规则有效性、错误提示信息。ALTER TABLE 学生 ALTER 奖学金 DROP CHECK例6:删除学生表中“奖学金”字段的默认值。 ALTER TABLE 学生 ALTER 奖学金 DROP DEFAULT 删除字段。例7:删除学生表中的“英语”字段。ALTER TABLE 学生 DROP COLUMN 英语 给字段改名。例8:将学生表中的“奖学金”字段改为“助学金”。

30、ALTER TABLE 学生 RENAME COLUMN 奖学金 TO 助学金 给已有字段增加主索引(PRIMARY KEY)和候选索引(UNIQUE)。例9:将选课表中的“学号”字段和“课程号”定义为候选索引(候选关键字)。 ALTER TABLE 选课 ADD UNIQUE 学号+课程号 TAG XHKCH 删除已有字段的主索引(PRIMARY KEY)和候选索引(UNIQUE)。例10:删除选课表中的候选索引标识XHKCH。 ALTER TABLE 选课 DROP UNIQUE TAG XHKCH3表结构的删除(DROP) DROP TABLE 表名注意:1、DROP TABLE直接从磁

31、盘上删除表文件。2、如果删除的是数据库表,在执行DROP TABLE命令之前一定要把数据库打开,这样才能既把表文件删除了同时又把该表文件在数据库中的链接信息删掉。2004年9月全国计算机等级考试二级笔试试卷一、选择题(1)(13)题使用的数据表如下:当前盘当前目录下有数据库:学院.dbc,其中有“教师”表和“学院”表。“教师”表:职工号系号姓名工资主讲课程1102000101肖海3408数据结构1102000202王岩盐4390数据结构1102000301刘星魂2450C语言1102000403张月新3200操作系统1102000501李明玉4520数据结构1102000602孙民山2976操

32、作系统1102000703钱无名2987数据库1102000804呼延军3220编译原理1102000903王小龙3980数据结构1102001001张国梁2400C语言1102001104林新月1800操作系统1102001201乔小廷5400网络技术1102001302周兴池3670数据库1102001404欧阳秀3345编译原理“学院”表:系号系名01计算机02通信03信息管理04数学(1) 为“学院”表增加一个字段“教师人数”的SQL语句是A) CHANGE TABLE 学院 ADD 教师人数 IB) ALTER STRU 学院 ADD 教师人数 IC) ALTER TABLE 学院

33、ADD 教师人数 ID) CHANGE TABLE 学院 INSERT 教师人数 I(2) 将“欧阳秀”的工资增加200元SQL语句是A) REPLACE教师WITH 工资=工资+200 WHERE 姓名=“欧阳秀”B) UPDATE 教师 SET 工资=工资+200 WHEN 姓名=“欧阳秀”C) UPDATE 教师工资 WITH 工资+200 WHERE姓名=“欧阳秀”D) UPDATE 教师SET 工资=工资+200 WHERE姓名=“欧阳秀”(3) 下列程序段的输出结果是CLOSE DATAa=0USE教师GO TOPDO WHILE .NOT. EOF()IF主讲课程数据结构.OR.

34、主讲课程C语言a=a+1ENDIFSKIPENDDO?aA) 4 B) 5 C) 6 D) 7(4) 有SQL语句:(5) SELECT * FROM教师WHERE NOT(工资3000 OR 工资2000 AND 工资2000 OR 工资3000D) SELECT * FROM 教师 WHERE 工资=3000(7) 为“教师”表的职工号字段添加有效性规则:职工号的最左边三位字符是110,正确的SQL语句是A) CHANGE TABLE 教师 ALTER 职工号 SET CHECK LEFT(职工号,3)=110B) ALTERTABLE 教师 ALTER职工号SET CHECK LEFT(

35、职工号,3)=110C) ALTER TABLE 教师 ALTER职工号CHECK LEFT(职工号,3)=110D) CHANGE TABLE 教师 ALTER职工号SET CHECK OCCURS(职工号,3)=110(8) 有SQL语句SELECT DISTINCT 系号 FROM 教师 WHERE工资=;ALL(SELECT 工资 FROM 教师 WHERE系号02)该语句的执行结果是系号A) 01和02 B) 01和03 C) 01和04 D) 02和03 (9) 建立一个视图salary,该视图包括了系号和(该系的)平均工资两个字段,正确的SQL语句是:A) CREATE VIEW

36、 salary AS系号,AVG(工资) AS 平均工资 FROM 教师;GROUP BY系号B) CREATE VIEW salary AS SELECT 系号,AVG(工资) AS 平均工资 FROM 教师;GROUP BY 系名C) CREATE VIEW salary SELECT系号,AVG(工资)AS平均工资FROM教师;GROUP BY系号D) CREATE VIEW salary AS SELECT系号,AVG(工资)AS平均工资FROM教师;GROUP BY系号(10) 删除视图salary的命令是A) DROP salary VIEW B) DROP VIEW salary

37、C) DELETE salary VIEW D) DELETE salary(11) 有SQL语句:SELECT主讲课程,COUNT(*)FROM 教师 GROUP BY 主讲课程该语句执行结果含有记录个数是A) 3 B) 4 C) 5 D) 6(12) 有SQL语句:SELECT COUNT(*)AS人数,主讲课程 FROM 教师 GROUP BY 主讲课程;ORDER BY人数DESC该语句执行结果的第一条记录的内容是A) 4 数据结构 B) 3 操作系统C) 2 数据库 D) 1 网络技术(13) 有SQL语句:SELECT 学院, 系名,COUNT(*)AS 教师人数FROM 教师,学

38、院;WHERE 教师.系号 = 学院.系号GROUP BY 学院.系名与如上语句等价的SQL语句是:A) SELECT 学院.系名,COUNT(*) AS 教师人数;FROM 教师INNER JOIN 学院;教师.系号 = 学院.系号GROUP BY 学院. 系名B) SELECT 学院.系名,COUNT(*) AS 教师人数;FROM 教师INNER JOIN 学院;ON 系号 GROUP BY 学院.系名C) SELECT 学院.系名,COUNT(*) AS 教师人数;FROM教师INNERJOIN学院;ON 教师.系号=学院.系号GROUP BY 学院.系名D) SELECT 学院.系名

39、,COUNT(*) AS 教师人数;FROM 教师INNERJOIN 学院;ON 教师.系号 = 学院.系号(14) 有SQL语句:SELECT DISTINCT 系号 FROM 教师 WHERE工资=;ALL(SELECT 工资 FROM 教师WHERE 系号=02)与如上语句等价的SQL语句是A) SELECT DISTINCT 系号 FROM 教师 WHERE工资=;(SELECT MAX(工资) FROM 教师 WHERE 系号=02)B) SELECT DISTINCT系号FROM 教师 WHERE 工资=;(SELECT MIN(工资) FROM 教师 WHERE 系号=02)C)

40、 SELECT DISTINCT 系号FROM 教师 WHERE工资=;ANY(SELECT 工资 FROM 教师 WHERE 系号=02)D) SELECT DISTINCT 系号 FROM 教师 WHERE工资=;SOME(SELECT 工资 FROM 教师 WHERE 系号=02)答案:C D C A B A D B D A C A二、填空题(1) 为“学生”表增加一个“平均成绩”字段的正确命令是 ALTER TABLE 学生 ADD 【1】 平均成绩 N(5,2)。答案:Column2005年4月全国计算机等级考试二级笔试试卷一、选择题(24) 使用SQL语句将学生表S中年龄(AGE)

41、大于30岁的记录删除,正确的命令是A) DELETE FOR AGE 30 B) DELETE FROM S WHERE AGE 30C) DELETE S FOR AGE 30 D) DELETE S WHERE AGE 30(26) 在Visual FoxPro中,删除数据库表S的SQL命令是A) DROP TABLE S B) DELETE TABLE SC) DELETE TABLE S.DBF D) ERASE TABLE S(28) 使用SQL语句向学生表S(SNO,SN,AGE,SEX)中添加一条新记录,字段学号(SNO)、姓名(SN)、性别(SEX)、年龄(AGE)的值分别为0401、王芳、女、18,正确命令是A) APPEND INTO S (SNO,SN,SEX,AGE)VALUES(0401,王芳,女,18)B) APPEND S VALUES(0401,王芳,1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1