专升本数据库练习题及答案(共21页).doc
《专升本数据库练习题及答案(共21页).doc》由会员分享,可在线阅读,更多相关《专升本数据库练习题及答案(共21页).doc(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上一关系代数运算1.选择 (1)查询年龄小于20岁的学生 sage = =80 AND 性别=女6) 设置字段别名(as) 表达式 as 别名 或 字段别名 = 表达式例 查询学生姓名 性别 年龄Select 姓名as学生姓名,性别,datediff(year,出生日期,getdate()as年龄From 学生表 或Select 学生姓名=姓名,性别,年龄=datediff(year,出生日期,getdate()From 学生表2. Order by子句(对查询结果默认升序(asc)降序(desc)例 查询选修了3号课程的学生学号 成绩 结果按分数降序排列 Select
2、 成绩,学号 From 选课表 Where 课程号=3 Order by成绩 desc2. 聚集函数(count 统计个数,sum 求和,avg 求平均数,max 最大数,min 最小数) 只能用于select,group by,having 子句中 不能用于where条件句中 例 查询选修课程号为1的学生最高成绩 Select max(成绩) From 选课表 Where 课程号=1 2. Group by . having子句(功能为分组) 例 1.求各个课程号及相应的选课人数 Select 课程号,count(学号) From 选课表 Group by 课程号 2.查询选修了三门以上课程
3、的学生学号 Select 学号 From 选课表 Group by 学号 having count(*) 3(having子句作用范围为Group by后) 3.查询平均成绩大于等于90分的学生学号 和平均成绩 Select 学号avg(成绩) From 选课表 Group by 学号 having avg(成绩)=90七多表查询1. 表连接 用where子句连接两个表Where 表一.列名(比较运算符,=,=,=,!=) 例 查询与刘晨在同一个系学习的学生的学号,姓名 Select 学号,姓名,系名 From 学生表 Where系名 in ( Select 系名 From 学生表 Where
4、姓名=刘晨)八建立索引1.建立索引 Create unique(唯一)clustered ( 聚集 ) nonclustered ( 非聚集 ) Index 索引名 On (表/视图)(列名asc(升序)desc(降序) With pad_indexfillfactor=填充因子drop_existing 例 在学生表上创建一个名为XS XM的非唯一性非聚簇索引 索引关键字为姓名 升序 填充因子为50% Create nonclustered Index XS XM On 学生表(姓名 asc) With fillfactor=502. 删除索引 Drop index 表名.索引名 九视图1.
5、 定义视图1) 建立视图Create view 视图名 列名As Select (在视图后加上with check option子句 以后对该视图进行增删改时则自动添加) 例 建立信息系学生的视图 Create view 信息系学生 As Select 学号,姓名,年龄 From 学生表 Where 系别=信息系1) 删除视图Drop view 视图名(如选择级联删除 视图名后加cascade)例 删除视图BT_S和视图IS_S1 Drop view BT_S Drop view IS_S1 (拒绝执行 因为与另一个视图有连接所以 后面加cascade)2. 查询视图!同表查询 唯一区别在于f
6、rom中添加的为视图名!2. 更新视图(指对视图进行增删改,由于对视图修改最后都归结于对表的修改所以修改视图数据=修改表数据)函数1、 标量值 create function 函数名(变量 类型)returns 返回值类型beginreturnend例:给专业名求男女比例CREATE FUNCTION 某专业男女比例(专业名 varchar(20)RETURNS numeric(6,2)ASBEGINdeclare man intdeclare woman intselect man=count(*)from 学生表,专业表,班级表where 学生表.学号=班级表.班号 and 班级表.专业=
7、专业表.专业号 and 性别=男and 专业名=专业名select woman=count(*)from 学生表,专业表,班级表where 学生表.学号=班级表.班号 and 班级表.专业=专业表.专业号 and 性别=女and 专业名=专业名 return cast(man as float)/cast(woman as float)END执行select dbo.某专业男女比例(数据库)2、表值函数 给班名和课程名 求某班某课成绩单CREATE FUNCTION 某班某课成绩单(班名 char(20),课程名 varchar(20)RETURNS TABLE ASRETURN (selec
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 练习题 答案 21
限制150内