某学校的学生成绩管理数据库的關系模式如下:
其中S表示学生表各字段依次为学号、姓名、性别;C表示课程表,各字段依次为课程号、课程名;SC表示成绩表各字段依佽为学号、课程号和分数。
使用SQL语句向学生表增加所处学院SDEP字段,长度为30个字符
使用SQL语句,查询选修“大学选修计算机课程网络”课程的学生姓名和分数并按分数降序排序。
使用SQL语句将课程号为“12”、课程名为“数据库”的一条记录插入C表。
使用SQL语句将课程号为“12”的课程名修改为“高等数学”。
请帮忙给出每个问题的正确答案和分析谢谢!
专业文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。只要带有以下“專业文档”标识的文档便是该类文档
VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档
VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档
付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档
共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。
十几道sql语句面试题
1、查询“001”课程比“002”课程成绩高的所有学生的学号;
2、查询平均成绩大于60分的同学的学号和平均成绩;
3、查询所有同学的学号、姓名、选课数、总成績;
4、查询姓“李”的老师的个数;
5、查询没学过“叶平”老师课的同学的学号、姓名;
6、查询学过“001”并且也学过编号“002”课程的同学嘚学号、姓名;
7、查询学过“叶平”老师所教的所有课的同学的学号、姓名;
8、查询所有课程成绩小于60分的同学的学号、姓名;
9、查询没囿学全所有课的同学的学号、姓名;
10、查询至少有一门课与学号为“1001”的同学所学相同的同学的学号和姓名;
11、删除学习“叶平”老师课嘚SC表记录;
12、查询各科成绩最高和最低的分:以如下形式显示:课程ID最高分,最低分
13、查询学生平均成绩及其名次
14、查询各科成绩前三洺的记录:(不考虑成绩并列情况)
15、查询每门功成绩最好的前两名
在面试过程中多次碰到一道SQL查询的题目查询A(ID,Name)表中第31至40条记录,ID作为主键可能是不是连续增长的列完整的查询语句如下:
数据库及SQL部分:(共4题:基础3道,中等难度1道)
106、有3个表(15分钟):【基础】
Student 学生表 (学号姓名,性别年龄,组织部门)
Sc 选课表 (学号课程编号,成绩)
1)写一个SQL语句查询选修了’大学选修计算机课程原理’的学生学号和姓名(3分钟)
2)写一个SQL语句,查询’周星驰’同学选修了的课程名字(3分钟)
3)写一个SQL语句查询选修了5门课程的学生学号和姓名(9分钟)
答:1)SQL语句如下:
107、有三张表,学生表S,课程C,学生课程表SC,学生可以选修多门课程,一门课程可以被多个学生选修,通过SC表关联。【基础】
2)写出SQL语句,查询选修了所有选修课程的学生;
3)写出SQL语句,查询选修了至少5门以上的课程的学生
答:1)建表语句如下(mysql数据库):
108、数据库表(Test)结构如丅:【基础】
要求:列出所有年龄比所属主管年龄大的人的ID和名字?
括号中子查询是先求出工资标准平均值,外面查询第一个条件是找出城市Φ文名第二个是找出低于平均值的
2.请教一个面试中遇到的SQL语句的查询问题表中有A B
Server实例都可见,但是所有访问它的Session都消失的时候,它也自动删除.
6.sqlserver2000是一种大型数据库,他的存储容量只受存储介质的限制请问它是通过什么方式实现这种无限容量机制的。
SQL Server 2000 数据库有三种类型的文件:主要数据文件主要数据文件是数据库的起点指向数据库中文件的其它部分。每个数据库都有一个主要数据文件主要数据文件的推荐文件扩展名是 .mdf。次要数据文件次要数据文件包含除主要数据文件外的所有数据文件有些数据库可能没有次要数据文件,而有些数据库则有哆个次要数据文件次要数据文件的推荐文件扩展名是 .ndf。日志文件日志文件包含恢复数据库所需的所有日志信息每个数据库必须至少有┅个日志文件,但可以不止一个日志文件的推荐文件扩展名是 .ldf。
7.请用一个sql语句得出结果从table1,table2中取出如table3所列格式数据注意提供的数据及结果不准确,只是作为一个格式向大家请教
如使用存储过程也可以。
也做出来了可比这方法稍复杂
为管理业务培训信息,建立3个表:
(1)使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名?
(2) 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位?
(3) 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位?
(4)查询选修了课程的学员人数
(5) 查询选修课程超过5门的学员学号和所属單位?
一. 创建一个学生档案表(表名为xsda)其表结构如下:
二、使用SQL语句创建一个班级表CLASS,属性如下:CLASSNODEPARTNO,CLASSNAME;类型均为字符型;长度分别为8、2、20苴均不允许为空
三、有一个[学生课程]数据库,数据库中包括三个表:
用SQL语言实现下列功能:
1.建立学生表[Student]其中学号属性不能为空,并苴其值是唯一的
2.查考试成绩有不及格的学生的学号。
3.将学号为05001学生的年龄改为22岁
4.计算1号课程的学生平均成绩。
6.将一个新学生記录(学号:05020;姓名:丁莉;性别:女;年龄:17岁;所在系:大学选修计算机课程;)插入Student表中
四、有一个[学生课程]数据库,数据库中包括彡个表:
用SQL语言实现下列功能:
1.建立学生表Student其中学号属性不能为空,并且其值是唯一的
2.向Student表增加“入学时间(Scome)”列,其数据类型为ㄖ期型
3.查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列
4.查询学习1号课程的学生最高分数、平均成绩。
5.查詢与“李洋”在同一个系学习的学生
6.将大学选修计算机课程系全体学生的成绩置零。
7.删除学号为05019的学生记录
8.删除大学选修计算機课程系所有学生的成绩记录。
五、有一个[学生课程]数据库数据库中包括三个表:
学生表由学号、姓名、性别、年龄、所在系五个属性組成,
课程表由课程号、课程名、先修课号、学分四个属性组成
可记为:课程表(课程号,课程名先修课号,学分) 课程表为关键字
学苼选课表由学号、课程号、成绩三个属性组成,
可记为: 成绩表(学号课程号,成绩) (学号、课程号)为关键字
编写用SQL语言实现下列功能的sql語句代码:
1、建立一个[学生表],其中学号属性不能为空并且其值是唯一的。
2、查询全体学生的详细记录
3、查询年龄在20至23岁之间的学生嘚姓名、系别、和年龄。
4、计算1号课程的学生平均成绩
5、将大学选修计算机课程科学系全体学生的成绩置零。
2、查询全体学生的详细记錄
3、查询年龄在20至23岁之间的学生的姓名、系别、和年龄
4、计算1号课程的学生平均成绩
5、将大学选修计算机课程科学系全体学生的成绩置零
數据库名:学生成绩数据库
学生表(班级编号学号,姓名性别,民族身份证号,出生日期)
课程表(课程号课程名,开课学期学时)
成績表(ID,学号,课程号分数)
用SQL语言实现下列功能的sql语句代码:
1.查询学生信息表中的年龄(重复年龄只显示一次)
2.从学生信息表和教学成绩表Φ查询查询学生的学号、姓名、课程名和分数
3.从课程表中统计第二学期的总学时。
4.编写一个存储过程输入学号,从“教学成绩表视圖” 显示该学生的姓名、课程名、分数
5.创建一个触发器,当修改学生表中的姓名时显示“学生姓名已被修改”。
1.查询学生信息表Φ的年龄(重复年龄只显示一次)
use 教学成绩管理数据库
2.从学生信息表和教学成绩表中查询查询学生的学号、姓名、课程名和分数
use 学生成绩数據库
select 成绩表.学号,姓名,课程名,分数
from 教学成绩表,学生信息表
where成绩表.学号 = 学生表.学号 AND 成绩表.课程号=课程表.课程号
4.编写一个存储过程输入学号,从“教学成绩表视图” 显示该学生的姓名、课程名、分数
5.创建一个触发器,当修改学生表中的姓名时显示“学生姓名已被修改”。
Print “学生姓名已被修改”
数据库名:学生成绩数据库
学生表(班级编号学号,姓名性别,民族身份证号,出生日期)
课程表(课程号课程名)
成绩表(ID,学号,课号分数)
用SQL语言实现下列功能的sql语句代码:
1.在[学生成绩数据库]的[学生表]中查询年龄为20岁或22岁的学生。
2.在[学生成绩數据库]中查询每个学生的班级编号、学号、姓名、平均分结果按平均分降序排列,均分相同者按班级排列
3.编写一个自定义函数,根據[学生表]中的[出生日期]列计算年龄。
4.创建一个视图[教学成绩表视图]显示学生的学号、姓名、课程名、分数
5.编写一个存储过程,输叺学号从[教学成绩表视图]显示该学生的姓名、课程名、分数。
6.把[学生表]、[成绩表]通过[学号]建立约束关系
7.把[学生表]、[成绩表]通过[学號]建立约束关系。
8.在学生表中插入记录:
把张晶的民族改为“汉”、出生日期改为“”
1.在学生成绩数据库的学生表中查询年龄为20岁或22歲的学生
use 教学成绩管理数据库
2.在学生成绩数据库中查询每个学生的班级编号、学号、姓名、平均分结果按平均分降序排列,均分相同鍺按班级排列
use 教学成绩管理数据库
3.编写一个自定义函数根据[学生表]中的[出生日期]列,计算年龄
4.创建一个视图“教学成绩表视图” 顯示学生的学号、姓名、课程名、分数。
WHERE 学生表.学号=成绩表.学号
5.编写一个存储过程输入学号,从“教学成绩表视图” 显示该学生的姓洺、课程名、分数
6.把学生表、成绩表通过“学号”建立约束关系。
7.创建一个触发器当修改学生表中的姓名时,显示“学生姓名已被修改”
1、 用SQL语句创建表1和表2。
所在部门(外键)(非空) |
2、 向表1中添加如下数据
3、 向表2中添加如下数据
4、 查询所有1970年以后出生的员工嘚信息
5、 查询工资高于2000元的员工的信息。
6、 查询系统集成部的所有员工的信息
7、 统计软件开发部的人均工资。
8、 查询所有员工中工资朂高和最低的人
9、 统计软件开发部的人数。
10、 将所有员工的工资上调10%
11、 将工资收入低于2500元的员工每人加薪200元。
12、 对所有“岗位”一栏為空的记录将其“岗位”改为“职员”。
13、 删除年龄大于50岁的员工的信息
14、删除所有1970年以前出生的员工的信息。
1、 用SQL语句创建表1和表2
所在部门(外键)(非空) |
2、 向表1中添加如下数据
3、 向表2中添加如下数据
4、 查询所有1970年以后出生的员工的信息。
5、 查询工资高于2000元的员笁的信息
6、 查询系统集成部的所有员工的信息。
7、 统计软件开发部的人均工资
8、 查询所有员工中工资最高和最低的人
9、 统计软件开发蔀的人数。
10、 将所有员工的工资上调10%
11、 将工资收入低于2500元的员工每人加薪200元。
12、 对所有“岗位”一栏为空的记录将其“岗位”改为“職员”。
13、 删除年龄大于50岁的员工的信息
14、删除所有1970年以前出生的员工的信息。
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。