大学计算机基础第八、九章_第1页
大学计算机基础第八、九章_第2页
大学计算机基础第八、九章_第3页
大学计算机基础第八、九章_第4页
大学计算机基础第八、九章_第5页
已阅读5页,还剩101页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、大学计算机基础教程 川北医学院 第八章第八章 查询、视图与结构化查询语言查询、视图与结构化查询语言SQLSQL大学计算机基础教程 川北医学院 *教学重点与难点教学重点与难点1.1.重点重点v创建查询创建查询v创建视图创建视图vSQLSQL命令命令2.2.难点难点v利用视图修改源表利用视图修改源表vSQLSQL多表查询多表查询vSQLSQL嵌套查询嵌套查询大学计算机基础教程 川北医学院 查询:查询:从指定表筛选符合条件的记录从指定表筛选符合条件的记录, ,不能修改源表不能修改源表视图:视图:虚拟表虚拟表, ,功能与查询相同功能与查询相同, ,可修改源表中内容可修改源表中内容SQLSQL:关系数据

2、库管理系统通用标准结构化查询语句关系数据库管理系统通用标准结构化查询语句大学计算机基础教程 川北医学院 8.1.1 8.1.1 使用向导创建查询使用向导创建查询步骤步骤: :1)1) 打开打开“项目管理器项目管理器”, ,选择选择“数据数据”选项卡选项卡; ;2)2) 在在“数据数据”选项卡中选择选项卡中选择“查询查询”选项选项; ;3)3) 单击单击“新建新建”按钮按钮, ,系统弹出系统弹出“新建查询新建查询”对话框对话框4)4) 在在“新建查询新建查询”对话框中对话框中, ,单击单击“查询向导查询向导”按钮按钮, , 系统显示系统显示“向导选取向导选取”对话框对话框; ;5)5) 在在“向

3、导选取向导选取”对话框中对话框中, ,选择选择“查询向导查询向导”, ,并并单击单击“确定确定”按钮按钮; ;6 6)在)在“查询向导查询向导”对话框中对话框中, ,按照向导对话框的提示按照向导对话框的提示进行操作。进行操作。8.1 8.1 创建查询创建查询大学计算机基础教程 川北医学院 例例1 1 使用向导创建一个查询使用向导创建一个查询, ,查询入学成绩在查询入学成绩在500500分以上同学的学号、姓名、入学成绩。分以上同学的学号、姓名、入学成绩。添加表,选择字段添加表,选择字段设置条件筛选记录设置条件筛选记录记录排序记录排序限制记录限制记录( (若没有排序则无限制记录选项若没有排序则无限

4、制记录选项) )完成,保存完成,保存( (可利用设计器进行修改可利用设计器进行修改) )运行查询运行查询大学计算机基础教程 川北医学院 8.1.2 8.1.2 使用查询设计器创建查询使用查询设计器创建查询步骤步骤: :1)1)选择选择“文件文件”菜单下的菜单下的“新建新建”命令命令2)2)在在“新建新建”对话框中选择对话框中选择“查询查询”, ,再单击再单击“新建文件新建文件”按钮按钮3)3)系统弹出系统弹出“打开打开”对话框对话框 (若数据库打开,则弹出若数据库打开,则弹出“添加表或视图添加表或视图”对对话框话框)大学计算机基础教程 川北医学院 大学计算机基础教程 川北医学院 若数据库中没有

5、需要的表则选若数据库中没有需要的表则选“其他其他”按钮按钮大学计算机基础教程 川北医学院 4)4)选中需要筛选记录的表或视图后,单击选中需要筛选记录的表或视图后,单击“关闭关闭”按钮,显示按钮,显示“查询设计器查询设计器”窗口窗口大学计算机基础教程 川北医学院 查询设计器窗口查询设计器窗口上部窗口上部窗口( (表或视图表或视图) )下部窗口下部窗口( (查询条件等查询条件等) )大学计算机基础教程 川北医学院 添加表添加表: :向查询设计器添加表或视图向查询设计器添加表或视图移去表移去表: :从查询设计器中移去或删除已添加的表或视图从查询设计器中移去或删除已添加的表或视图添加联接添加联接: :

6、为上部窗格中相关表建立联接条件为上部窗格中相关表建立联接条件显示显示SQLSQL窗口窗口: :察看查询自动生成的察看查询自动生成的Select-SQLSelect-SQL最大化上部窗口最大化上部窗口: :将查询设计器窗口的上部窗格最大化将查询设计器窗口的上部窗格最大化查询去向查询去向: :确定查询结果的输出方向确定查询结果的输出方向查询设计器工具栏按钮查询设计器工具栏按钮大学计算机基础教程 川北医学院 8.1.3 8.1.3 设置要查询的字段(设置要查询的字段(“字段字段”选项卡选项卡)可用字段、选定字段可用字段、选定字段添加、全部添加添加、全部添加移去、全部移去移去、全部移去函数和表达式:函

7、数和表达式:可生成一个字段表达式可生成一个字段表达式* *生成后注意添加生成后注意添加例例 查询查询studentstudent表中学生的姓名、年龄。表中学生的姓名、年龄。 year(date()-year(year(date()-year(出生日期出生日期) as ) as 年龄年龄大学计算机基础教程 川北医学院 8.1.4 8.1.4 筛选记录(筛选记录(“筛选筛选”选项卡选项卡)* *设置筛选条件(设置筛选条件(可以用可以用表达式生成器表达式生成器生成生成)u比较关系运算符:比较关系运算符: 、=、 、=500 and =500 and 入学成绩入学成绩=600=0 and =0 and

8、 入学成绩入学成绩=600=600大学计算机基础教程 川北医学院 7.7.取消默认值和有效性规则取消默认值和有效性规则( (仅数据库表仅数据库表) )ALTER TABLE ALTER TABLE 表表 ALTER ALTER 字段字段 DROP DEFAULTDROP DEFAULTALTER TABLE ALTER TABLE 表表 ALTER ALTER 字段字段 DROP CHECKDROP CHECK例例8 8 取消数据库表取消数据库表studentstudent的性别字段的默认值和入学的性别字段的默认值和入学成绩字段的有性规则。成绩字段的有性规则。ALTER TABLEALTER

9、TABLE student student ALTER ALTER 性别性别 DROP DEFAULTDROP DEFAULTALTER TABLEALTER TABLE student student ALTER ALTER 入学成绩入学成绩 DROP CHECKDROP CHECK大学计算机基础教程 川北医学院 8.8.设置索引设置索引u设置候选索引(字段值唯一)设置候选索引(字段值唯一)ALTER TABLEALTER TABLE 表名表名 ADDADD UNIQUE/CANDIDATEUNIQUE/CANDIDATE 索引表达式索引表达式 TAGTAG 索引标识索引标识例例9 9 将将

10、scorescore表的表的“学号学号”字段设置为候选索引。字段设置为候选索引。 ALTER TABLEALTER TABLE score score ADDADD CANDICANDI 学号学号 TAGTAG xh xh大学计算机基础教程 川北医学院 u设置主索引(字段值唯一,仅数据库表)设置主索引(字段值唯一,仅数据库表)ALTER TABLEALTER TABLE 表名表名 ADDADD PRIMARY KEYPRIMARY KEY 索引表达式索引表达式 TAGTAG 索引标识索引标识例例1010 将将数据库表数据库表departmentdepartment的的“系别号系别号”字段设置为

11、字段设置为主索引。主索引。ALTER TABLEALTER TABLE department ; department ;Add Primary KeyAdd Primary Key 系别号系别号 tagtag 系别号系别号大学计算机基础教程 川北医学院 u建立永久关系建立永久关系( (仅数据库表仅数据库表) )例例1111 以以departmentdepartment为主表与为主表与studentstudent表按表按“系别号系别号”字段建立两表间的永久关系(一对多关系)。字段建立两表间的永久关系(一对多关系)。父表父表departmentdepartment已按系别号字段设置主索引已按系别

12、号字段设置主索引ALTER TABLEALTER TABLE student ; student ; Add Foreign Key Add Foreign Key 系别号系别号 TagTag xbh ; xbh ; Reference Reference department department大学计算机基础教程 川北医学院 9.9.删除字段删除字段ALTER TABLE ALTER TABLE 表名表名 DROP DROP 字段名字段名 例例12 12 删除表删除表teacherteacher中的中的“相片相片”字段。字段。 Alter tableAlter table teacher

13、teacher DROPDROP 相片相片大学计算机基础教程 川北医学院 10.10.删除表删除表 DROP TABLE DROP TABLE 表名表名例例1313 删除删除 “ “teacher”teacher”表。表。 DROP table teacherDROP table teacher注意:注意: 当数据库处于打开状态时,要删除一个自当数据库处于打开状态时,要删除一个自由表,必须先将数据库关闭。由表,必须先将数据库关闭。大学计算机基础教程 川北医学院 8.4.3 SQL8.4.3 SQL的数据更新功能的数据更新功能操作对象:记录操作对象:记录功能:添加记录、更新记录、删除记录功能:添

14、加记录、更新记录、删除记录 大学计算机基础教程 川北医学院 1.1.插入记录插入记录INSERT INTO INSERT INTO 表名表名 (字段名列表)(字段名列表) VALUES VALUES (表达式列表)表达式列表)例例1 1 为表为表“department”“department”添加一个记录,系名称为添加一个记录,系名称为“英语系英语系”;再添加一个记录,系名称为;再添加一个记录,系名称为“口腔医口腔医学系学系”,系别号为,系别号为“05”“05”。insert intoinsert into department( department(系名称系名称) ) valuevalue

15、 ( (英语系英语系)insert intoinsert into department department value value (05,(05,口腔医学系口腔医学系)大学计算机基础教程 川北医学院 2.2.更新记录更新记录UPDATE UPDATE 表名表名 SET SET 字段名字段名1 1= =表达式表达式1 ,1 , 字段名字段名2=2=表达式表达式2 WHERE 2 WHERE 条件表达式条件表达式 例例2 2 将表将表“department”department”中系别号为中系别号为“05”05”的记录的的记录的系名称改为系名称改为“口腔系口腔系”。updateupdate

16、department department setset 系名称系名称=“=“口腔系口腔系” ” ; ; wherewhere 系别号系别号=05=05注意:注意:可同时更新多字段,字段间逗号间隔可同时更新多字段,字段间逗号间隔 更新条件更新条件 WhereWhere, ,若省略则更新所有记录。若省略则更新所有记录。大学计算机基础教程 川北医学院 3.3.删除记录删除记录DELETE FROM DELETE FROM 表名表名 WHERE WHERE 条件表达式条件表达式 例例3 3 将表将表“department”department”中系别号为中系别号为“05”05”的记录的记录删除。删除

17、。delete fromdelete from department department wherewhere 系别号系别号=05=05注意:注意: 该删除为逻辑删除该删除为逻辑删除 删除条件删除条件 WhereWhere 省略则删除所有记录省略则删除所有记录大学计算机基础教程 川北医学院 CREATE TABLE CREATE TABLE 表名表名 ( (字段名字段名 类型类型( (宽度宽度), ), )ALTER TABLE ALTER TABLE 表名表名 ADD ADD 字段名字段名 类型(宽度)类型(宽度)ALTER TABLE ALTER TABLE 表名表名 ADD CAND

18、ADD CAND 关键字关键字 TAG TAG 索引标识索引标识ALTER TABLE ALTER TABLE 表名表名 ADD PRIM KEY ADD PRIM KEY 关键字关键字 TAGTAG索引标识索引标识ALTER TABLE ALTER TABLE 表名表名 ALTER ALTER 字段名类型(宽度)字段名类型(宽度)ALTER TABLEALTER TABLE 表名表名 ALTER ALTER 字段名字段名 SET CHECK SET CHECK 表达式表达式ALTER TABLE ALTER TABLE 表名表名 ALTER ALTER 字段名字段名 SET DEFULT S

19、ET DEFULT 实例实例ALTER TABLEALTER TABLE 表名表名 ALTER ALTER 字段名字段名 DROP CHECK DROP CHECK ALTER TABLE ALTER TABLE 表名表名 ALTER ALTER 字段名字段名 DROP DEFULT DROP DEFULT *数据定义和数据操纵命令小结数据定义和数据操纵命令小结*大学计算机基础教程 川北医学院 ALTER TABLE ALTER TABLE 表名表名 RENAME RENAME 原字段名原字段名 TO TO 新字段名新字段名ALTER TABLE ALTER TABLE 表名表名 DROP D

20、ROP 字段名字段名DROP TABLE DROP TABLE 表名表名INSERT INTO INSERT INTO 表名表名 ( (字段名列表字段名列表) VALUE () VALUE (值列表值列表) )UPDATE UPDATE 表名表名 SET SET 字段名字段名= =值值 WHERE WHERE 条件表达式条件表达式DELE FROM DELE FROM 表名表名 WHERE WHERE 条件表达式条件表达式大学计算机基础教程 川北医学院 SELECTSELECT ALL |DISTINCT TOP nExprPERCENT ALL |DISTINCT TOP nExprPERC

21、ENTAlias. Select_ItemAS Column_Name.Alias. Select_ItemAS Column_Name.FROM FORCE DatabaseName! Table Local_AliasFROM FORCE DatabaseName! Table Local_AliasINNER |LEFT OUTER|RIGHT OUTER|FULLOUTERINNER |LEFT OUTER|RIGHT OUTER|FULLOUTERJOIN DatabaseName! TableLocal_AliasJOIN DatabaseName! TableLocal_Alia

22、sON JoinCondition.ON JoinCondition.输出项的标题输出项的标题按按ASC/DESCASC/DESC排序后前排序后前n n条记录条记录排除重复记录排除重复记录指定输出项指定输出项, ,若为若为* *, ,则为所有字段则为所有字段指定数据源指定数据源( (数据库表或自由表数据库表或自由表) )多个表之间可用逗号间隔多个表之间可用逗号间隔若多个表间要进行联接若多个表间要进行联接, ,指明联接类型指明联接类型多表间进行联接时多表间进行联接时的联接条件的联接条件 8.4.4 SQL 8.4.4 SQL 的数据查询功能的数据查询功能* * *大学计算机基础教程 川北医学院

23、INTO DestinationINTO Destination|TO FILE FileName ADDITIVE|TO FILE FileName ADDITIVE|TO PRINTERPROMPT|TO PRINTERPROMPT|TO SCREEN|TO SCREENPREFERENCE PreferenceNamePREFERENCE PreferenceNameNOCONSOLENOCONSOLEPLAINPLAINNOWAITNOWAIT设置查询的输出结果集设置查询的输出结果集into cursor into cursor Into table Into table into a

24、rray into array 将结果输出到屏幕将结果输出到屏幕若没有指明任何输出形式若没有指明任何输出形式, ,则默认为输出到浏览窗口则默认为输出到浏览窗口大学计算机基础教程 川北医学院 WHERE JoinCondition And JoinCondition WHERE JoinCondition And JoinCondition GROUP BY GroupColumn, GroupColumn GROUP BY GroupColumn, GroupColumn HAVING FilterCondition HAVING FilterConditionUNION ALL SELECT

25、CommandUNION ALL SELECTCommand ORDER BY Order_Item ASC|DESC ORDER BY Order_Item ASC|DESC, Order_Item ASC|DESC, Order_Item ASC|DESC记录筛选条件记录筛选条件( (或多表联接条件或多表联接条件) )分组汇总依据分组汇总依据结果排序条件结果排序条件汇总后筛选条件汇总后筛选条件大学计算机基础教程 川北医学院 一、单表查询一、单表查询1.1.无条件单表查询无条件单表查询SELECT FROM SELECT FROM SELECT SELECT 学号学号, ,姓名姓名, ,出生

26、日期出生日期, ,入学成绩入学成绩 from studentfrom studentSELECT SELECT 姓名姓名, ,入学成绩入学成绩 as as 高考分高考分 from studentfrom studentSELECT SELECT * * from student from student大学计算机基础教程 川北医学院 2.2.有条件单表查询有条件单表查询SELECT FROM Where SELECT FROM Where SELECT SELECT 学号学号, ,姓名姓名, ,出生日期出生日期, ,入学成绩入学成绩 from student;from student; whe

27、re where 性别性别=“=“男男”SELECT SELECT 学号学号, ,姓名姓名, ,出生日期出生日期, ,入学成绩入学成绩 from student;from student; where subs( where subs(姓名姓名,1,2)=“,1,2)=“张张” ” ; ; and and 入学成绩入学成绩=500 =500 大学计算机基础教程 川北医学院 例例 在表在表studentstudent中查询:中查询:姓名中含有姓名中含有“红红”的学生信息。的学生信息。SELECT SELECT * * FROM student WHERE FROM student WHERE 姓

28、名姓名 LIKE %LIKE %红红%入学成绩介于入学成绩介于500500到到600600之间的学生信息。之间的学生信息。SELECT SELECT * * FROM student ; FROM student ; WHERE WHERE 入学成绩入学成绩 between 500 and 600between 500 and 600系别号为系别号为 01 01 和和 04 04 的学生信息。的学生信息。SELECT SELECT * * FROM student ; FROM student ; WHERE WHERE 系别号系别号 IN (“01”,”04”)IN (“01”,”04”)大

29、学计算机基础教程 川北医学院 3.3.查询后分组查询后分组SELECT FROM GROUP BY SELECT FROM GROUP BY SELECT SELECT 姓名姓名, ,性别性别,sum(,sum(入学成绩入学成绩) from student ;) from student ; group by group by 性别性别SELECT SELECT 系别号系别号,count(,count(* *) as ) as 人数人数 from student ;from student ; group by group by 系别号系别号 havinghaving 人数人数=3=3注意:注

30、意:分组通常和统计函数搭配使用。分组通常和统计函数搭配使用。HavingHaving用于分用于分组后筛选。分组查询如果选取不进行计算的字段,则组后筛选。分组查询如果选取不进行计算的字段,则显示信息为符合条件的最后一条记录。显示信息为符合条件的最后一条记录。大学计算机基础教程 川北医学院 4.4.查询后排序查询后排序SELECT SELECT FROM FROM ORDER BY ORDER BY SELECT SELECT 学号学号, ,姓名姓名, ,入学成绩入学成绩 from student;from student; order by order by 入学成绩入学成绩 注意:注意:默认升

31、序。默认升序。大学计算机基础教程 川北医学院 5.5.查询的输出去向(默认输出到浏览窗口)查询的输出去向(默认输出到浏览窗口)SELECT SELECT FROM FROM INTO / TO INTO / TO SELECT SELECT 学号学号, ,姓名姓名, ,性别性别 from student ;from student ; into table QKB into table QKBSELECT SELECT 学号学号, ,姓名姓名, ,性别性别 from student ;from student ; into cursor LSB into cursor LSBSELECT SE

32、LECT 学号学号, ,姓名姓名, ,性别性别 from student ;from student ; to screen to screen大学计算机基础教程 川北医学院 二、两表查询二、两表查询1.1.表间使用表间使用joinjoin建立联接建立联接SELECT SELECT FROM FROM INNER JION INNER JION ON ON SELECT student.SELECT student.学号学号, ,姓名姓名, ,计算机计算机; ; from student inner join score ; from student inner join score ; on

33、 student. on student.学号学号=score.=score.学号学号 ; ; where where 入学成绩入学成绩500500 注意:注意:公共字段前必须带上表名;公共字段前必须带上表名; 表名和字段名间用圆点间隔。表名和字段名间用圆点间隔。大学计算机基础教程 川北医学院 2.2.表间使用表间使用wherewhere充当联接条件充当联接条件SELECT SELECT FROM FROM , , Where Where Select student.Select student.学号学号, , 姓名姓名, , 计算机计算机; ; from student,score; fr

34、om student,score; where student. where student.学号学号=score.=score.学号学号; ; and and 入学成绩入学成绩500500注意:注意:若还有筛选条件,则用若还有筛选条件,则用 .and. .and. 连接即可;连接即可; 表与表间用逗号间隔。表与表间用逗号间隔。大学计算机基础教程 川北医学院 三、三表及以上的查询三、三表及以上的查询方法同两表查询方法同两表查询, ,但要注意联接时表的顺序但要注意联接时表的顺序SeleSele fromfrom SCORE SCORE inner joininner join STUDENT ;

35、 STUDENT ; inner joininner join DEPARTMENT ; DEPARTMENT ; ON ON Department.Department.系别号系别号=Student.=Student.系别号系别号; ; ONON Student. Student.学号学号=Score.=Score.学号学号 注意:注意:先写最后两表连接条件。先写最后两表连接条件。 也可以使用逗号也可以使用逗号+where+where的方式。的方式。大学计算机基础教程 川北医学院 四、表间嵌套查询(查询中嵌套查询)四、表间嵌套查询(查询中嵌套查询)例例 查询英语成绩查询英语成绩7070分以上

36、同学的学号、姓名分以上同学的学号、姓名SELE STUDENT.SELE STUDENT.学号学号, , 姓名姓名 ; ; FROM STUDENT, SCORE ; FROM STUDENT, SCORE ; WHERE STUDENT. WHERE STUDENT.学号学号=SCORE.=SCORE.学号学号 ; ; AND SCORE. AND SCORE.英语英语7070 SELE SELE 学号学号, ,姓名姓名 FROM STUDENT ;FROM STUDENT ; WHERE WHERE 学号学号 ININ ; ; ( SELE ( SELE 学号学号 FROM SCORE ;

37、FROM SCORE ; WHERE WHERE 英语英语70 )70 )大学计算机基础教程 川北医学院 五、查询统计五、查询统计例例1.1.统计表中记录个数统计表中记录个数Select count(Select count(* *) as ) as 人数人数 from studentfrom student例例2.2.统计某列值的最大、最小值统计某列值的最大、最小值Select max(Select max(入学成绩入学成绩),min(),min(入学成绩入学成绩) from student) from student例例3.3.求某数值型列全部数值的总和、平均值求某数值型列全部数值的总和、

38、平均值Select sum(Select sum(入学成绩入学成绩) as ) as 总成绩总成绩 from studentfrom studentSelect avg(Select avg(入学成绩入学成绩) as ) as 平均成绩平均成绩 from studentfrom student大学计算机基础教程 川北医学院 六、通过查询创建视图六、通过查询创建视图CREATE VIEW CREATE VIEW 视图名视图名 AS SELECT AS SELECT 例例 利用表利用表studentstudent建立视图建立视图 myview,myview,视图中包括视图中包括“学号学号”中第中第

39、5 5、6 6位是位是“04”04”的所有记录。的所有记录。OPEN DATABASE studentsOPEN DATABASE studentsCREATE VIEW myview AS ;CREATE VIEW myview AS ; SELECT SELECT * * FROM student ; FROM student ; WHERE substr( WHERE substr(学号学号,5,2)=04,5,2)=04大学计算机基础教程 川北医学院 定义定义数据源数据源指定数据源表指定数据源表FROM FROM 确定源表间的联接确定源表间的联接INNER JOININNER JOIN

40、 ON ON定义定义查询查询结果结果指定输出字段表达式指定输出字段表达式SELECT SELECT 筛选源表记录筛选源表记录WHERE WHERE 指定结果顺序指定结果顺序ORDER BYORDER BY定义记录的分组定义记录的分组GROUP BYGROUP BY筛选结果记录筛选结果记录HAVINGHAVING指定结果的范围指定结果的范围TOP nTOP n指定有无重复记录指定有无重复记录ALL ALL 或或 DISTINCTDISTINCT指定输出类型指定输出类型INTOINTO 或或 TO TO 大学计算机基础教程 川北医学院 课堂练习课堂练习1.1.查询查询studentstudent表

41、中入学成绩在表中入学成绩在500500分以上的分以上的 女同学的学号女同学的学号 、姓名、入学成绩、姓名、入学成绩, , 将入学成绩标题设为高考分将入学成绩标题设为高考分, , 并将结果输出到屏幕并将结果输出到屏幕2.2.查询女同学的学号查询女同学的学号, ,姓名姓名, ,计算机,计算机, 结果输出到表结果输出到表:jsj:jsj大学计算机基础教程 川北医学院 3.3.查询护理系学生的姓名查询护理系学生的姓名, ,入学成绩入学成绩, ,计算机计算机, , 并对入学成绩按降序排列并对入学成绩按降序排列, , 查询结果输出到临时表:查询结果输出到临时表:yxbyxb4.4.统计影像系学生的人数统计

42、影像系学生的人数, ,以及影像系学生以及影像系学生 入学成绩的平均分入学成绩的平均分, , 将输出标题设为将输出标题设为“人数人数”和和“影像系平均影像系平均”5.5.统计男女生各自的入学成绩总和统计男女生各自的入学成绩总和大学计算机基础教程 川北医学院 第一题:第一题:selesele 学号学号, ,姓名姓名, ,入学成绩入学成绩 asas 高考分高考分 ; ; fromfrom student; student; wherewhere 性别性别=女女 andand 入学成绩入学成绩500500大学计算机基础教程 川北医学院 第二题:第二题:方法方法1 1SeleSele student.

43、student.学号学号,student.,student.姓名姓名,score.,score.计算机计算机 ; ; fromfrom student student inner joininner join score ; score ; onon student. student.学号学号=score.=score.学号学号 ; ; wherewhere student. student.性别性别=“=“女女” ” ; ; into tableinto table jsj jsj 大学计算机基础教程 川北医学院 方法方法2 2Sele student.Sele student.学号学号,s

44、tudent.,student.姓名姓名,score.,score.计算机计算机 ; ; from student,score ; from student,score ; where student. where student.学号学号=score.=score.学号学号 ; ; and student. and student.性别性别=“=“女女” ” ; ; into table jsj into table jsj大学计算机基础教程 川北医学院 第三题:第三题:SelectSelect student. student.姓名姓名,student.,student.入学成绩入学成绩,

45、score.,score.计算机计算机; ; fromfrom department department inner joininner join student; student; student student inner joininner join score; score; onon student. student.学号学号=score.=score.学号学号; ; onon student. student.系别号系别号=department.=department.系别号系别号; ; wherewhere department. department.系名称系名称=“=“影像

46、系影像系”; ; order byorder by 入学成绩入学成绩 desc;desc; into cursorinto cursor yxb yxb 大学计算机基础教程 川北医学院 第四题:第四题:SelectSelect count(count(* *) ) asas 人数人数, ;, ; avgavg( (入学成绩入学成绩) ) asas 影像系平均影像系平均 ; ; fromfrom department department inner joininner join student ; student ; onon student. student.系别号系别号=departmen

47、t.=department.系别号系别号 ; ; wherewhere department. department.系名称系名称=“=“影像系影像系” 大学计算机基础教程 川北医学院 第五题:第五题:Select sumSelect sum( (入学成绩入学成绩) ) fromfrom student ; student ; group bygroup by 性别性别 大学计算机基础教程 川北医学院 *内容回顾内容回顾*CREATE TABLE (CREATE TABLE (字段名字段名 类型类型( (宽度宽度), ), )ALTER TABLE ADD ALTER TABLE ADD AL

48、TER TABLE ADD UNIQ/CAND TAG ALTER TABLE ADD UNIQ/CAND TAG ALTER TABLE ADD PRIMARY KEY TAG ALTER TABLE ADD PRIMARY KEY TAG ALTER TABLE ALTER ALTER TABLE ALTER ALTER TABLE ALTER SET CHECK ALTER TABLE ALTER SET CHECK ALTER TABLE ALTER SET DEFULT ALTER TABLE ALTER SET DEFULT ALTER TABLE RENAME TO ALTER

49、TABLE RENAME TO 大学计算机基础教程 川北医学院 ALTER TABLE DROP ALTER TABLE DROP INSERT INTO ( INSERT INTO ( 字段名列表字段名列表 ) VALUE ( ) VALUE ( 值列表值列表 ) )UPDATE SET UPDATE SET 字段名字段名= =值值 WHERE WHERE DELE FROM WHERE DELE FROM WHERE DROP TABLE DROP TABLE 大学计算机基础教程 川北医学院 SELE FROM SELE FROM SELE AS FROMSELE AS FROMSELE

50、SELE * * FROM FROM SELE FROM WHERE SELE FROM WHERE SELE FROM ORDER BY ASC/DESC SELE FROM ORDER BY ASC/DESC SELE TOP N FROM ORDER BY SELE TOP N FROM ORDER BY SELE FROM GROUP BY HAVINGSELE FROM GROUP BY HAVINGSELE COUNT(SELE COUNT(* *),SUM(),AVG(),MAX(),MIN() ;),SUM(),AVG(),MAX(),MIN() ; FROM GROUP BY

51、 FROM GROUP BY 大学计算机基础教程 川北医学院 SELE FROM INTO TABLE SELE FROM INTO TABLE SELE FROM INTO CURSOR SELE FROM INTO CURSOR SELE FROM TO SCREENSELE FROM TO SCREENSELE FROM INNER JOIN ON SELE FROM INNER JOIN ON SELE FROM , WHERE SELE FROM , WHERE SELE FROM WHERE IN ( SELE FROM )SELE FROM WHERE IN ( SELE FRO

52、M )CREATE VIEW AS SELE CREATE VIEW AS SELE 大学计算机基础教程 川北医学院 1.1.在在Visual FoxProVisual FoxPro中,执行中,执行SQLSQL的的DELETEDELETE命令和传统的命令和传统的FoxPro DELETEFoxPro DELETE命令都可以删除库表中的记录,下面正命令都可以删除库表中的记录,下面正确的描述是确的描述是( )( )A.SQLA.SQL的的DELETEDELETE是物理删除,是物理删除,VFPVFP的的DELETEDELETE是逻辑删除是逻辑删除B.SQLB.SQL的的DELETEDELETE和和V

53、FPVFP的的DELETEDELETE在删除记录之前在删除记录之前, ,都需要都需要命令命令USEUSE打开表打开表C.SQLC.SQL的的DELETEDELETE删除记录前删除记录前, ,不需先用不需先用USEUSE打开表打开表D.VFPD.VFP的的DELETEDELETE还可以删除其它工作区表中的记录还可以删除其它工作区表中的记录2.2.给给studentstudent表增加一个表增加一个“平均成绩平均成绩”字段(数值型,字段(数值型,总宽度总宽度6, 26, 2位小数)的位小数)的SQLSQL命令是命令是( )( )A. ALTER TABLE student ADD A. ALTER

54、 TABLE student ADD 平均成绩平均成绩 Y(6,2)Y(6,2)B. ALTER TABLE student ADD B. ALTER TABLE student ADD 平均成绩平均成绩 D(6,2)D(6,2)C. ALTER TABLE student ADD C. ALTER TABLE student ADD 平均成绩平均成绩 E(6,2)E(6,2)D. ALTER TABLE studeni ADD D. ALTER TABLE studeni ADD 平均成绩平均成绩 N(6,2)N(6,2)大学计算机基础教程 川北医学院 3.3.删除删除studentstud

55、ent表表“平均成绩平均成绩”字段的正确字段的正确SQLSQL命令是命令是( )( )A. DELETE TABLE student DELETE COLUMN A. DELETE TABLE student DELETE COLUMN 平平均成绩均成绩B. ALTER TABLE student DELETE COLUMN B. ALTER TABLE student DELETE COLUMN 平平均成绩均成绩C. ALTER TABLE student DROP COLUMN C. ALTER TABLE student DROP COLUMN 平平均成绩均成绩D. DELETE TAB

56、LE student DROP COLUMN D. DELETE TABLE student DROP COLUMN 平平均成绩均成绩4.4.向向studentstudent表插入一条新记录的正确表插入一条新记录的正确SQLSQL语句是语句是( )( )A. APPEND INTO student VALUES(0401A. APPEND INTO student VALUES(0401, ,王芳王芳) )B. APPEND student VALUES(B. APPEND student VALUES(04010401, ,王芳王芳)C. INSERT student VALUES(C. I

57、NSERT student VALUES(04010401, ,王芳王芳) )D. INSERT INTO student VALUES(D. INSERT INTO student VALUES(04010401, ,王芳王芳) )大学计算机基础教程 川北医学院 5.5.从从studentstudent表删除表删除500500分以上记录的分以上记录的SQLSQL命令是命令是( )( )A.A. DELETE FOR DELETE FOR 入学成绩入学成绩500500B.B. DELETE student WHERE DELETE student WHERE 入学成绩入学成绩500500C.

58、DELETE student FOR WHERE C. DELETE student FOR WHERE 入学成绩入学成绩500500 D. DELETE FROM student WHERE D. DELETE FROM student WHERE 入学成绩入学成绩5005006.6.消除消除SQLSQL查询的重复记录,可采取的方法是查询的重复记录,可采取的方法是( )( )A. A. 通过指定主关键字通过指定主关键字B. B. 通过指定唯一索引通过指定唯一索引C. C. 使用使用DISTINCTDISTINCT短语短语D. D. 使用使用UNIQUEUNIQUE短语短语7.7.在在VFPV

59、FP中,关于视图的正确描述是中,关于视图的正确描述是( )( )A. A. 视图也称作窗口视图也称作窗口B. B. 视图是一个预先定义好的视图是一个预先定义好的SQL SELECTSQL SELECT语句文件语句文件C. C. 视图是一个存储数据的特殊表视图是一个存储数据的特殊表D. D. 视图是一种虚拟表视图是一种虚拟表大学计算机基础教程 川北医学院 8.8.查询设计器和视图设计器的主要不同是(查询设计器和视图设计器的主要不同是( )A.A.查询设计器有查询设计器有“更新条件更新条件”,没有,没有“查询去向查询去向”B.B.视图设计器有视图设计器有“更新条件更新条件”,没有,没有“查询去向查

60、询去向”C.C.视图设计器有视图设计器有“更新条件更新条件”,有,有“查询去向查询去向”D.D.查询设计器有查询设计器有“更新条件更新条件”,有,有“查询去查询去向向”9.9.若要将数据库表若要将数据库表studentstudent中的系别号字段(中的系别号字段(C C,2 2)的)的默默认值设置为认值设置为“01”01”,则正确的,则正确的SQLSQL命令为(命令为( )A.alter table student alter A.alter table student alter 系别号系别号 set check 01set check 01B.alter table student alt

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论