数据库应用-数据查询实验答案

2022-07-21 07:55:12   文档大全网     [ 字体: ] [ 阅读: ]

#文档大全网# 导语】以下是®文档大全网的小编为您整理的《数据库应用-数据查询实验答案》,欢迎阅读!
数据查询,答案,实验,数据库,应用
实验3 数据查询 1实验目的

(1) 掌握使用Transact-SQLSELECT语句进行基本查询的方法 (2) 掌握使用SELECT语句进行条件查询的方法

(3) 掌握SELECT语句的GROUP BYORDER BY以及UNION子句的作用和使用方法 (4) 掌握嵌套查询的方法

(5) 掌握连接查询的操作方法 2实验内容及步骤

请先附加studentsdb数据库然后完成以下实验 简单查询

1studentsdb数据库中使用下列SQL语句将输出什么?请用文字描述 SELECT COUNT(*) FROM grade

SELECT YEAR(GETDATE()),MONTH(GETDATE()),DAY(GETDATE()) (无列名) (无列名) (无列名) 2015 11 4 2

student_info表中查询每个学生的学号姓名出生日期信息 select 学号,姓名,出生日期 from student_info 查询学号为0001的学生的姓名和家庭住址

select 姓名,家庭住址 from student_info where 学号='0001' 找出所有男同学的学号和姓名

select 学号,姓名 from student_info where 性别='' 3

grade表中查找分数在80~90范围内的学生的学号和分数 select 学号,分数 from grade where 分数 between 80 and 90 grade表中查询课程编号为k003的学生的平均分

select 课程编号,avg(分数) 平均分 from grade group by 课程编号 having 课程编号='k003' grade表中查询学习各门课程的人数

select 课程编号,count(学号) from grade group by 课程编号 将学生按出生日期由大到小排序

select 姓名,出生日期 from student_info order by 出生日期 desc 查询所有姓的学生的学号和姓名

select 学号,姓名 from student_info where 姓名 like '%'

4student_info按性别顺序列出学生的学号姓名性别出生日期及家庭住址性别相同的按学号由小到大排序

select 学号,姓名,性别,出生日期,家庭住址 from student_info order by 性别,学号 5使用GROUP BY查询子句,列出各个学生的平均成绩

select 学号,avg(分数)平均成绩 from grade group by 学号

6使用UNION运算符将student_info表中姓的学生的学号姓名与 curriculum表的课程编号课程名称返回在一个表中 且列名为u_编号u_名称

select 学号 as u_编号,姓名 as u_名称 from student_info where 姓名 like % union

select 课程编号 as u_编号,课程名称 as u_名称 from course_info 1-8 联合查询结果集 嵌套查询 7

student_info表中查找与刘卫平性别相同的所有学生的姓名出生日期 --select * from student_info

select 姓名,出生日期 from student_info where 性别=''(select 性别 from student_info


where 姓名='刘卫平')

使用IN子查询查找所修课程编号为k002k005的学生学号姓名性别

select 课程编号 from course_info where 课程编号='k002' or 课程编号='k005'

列出学号为0001的学生的分数比0002学号的学生的最低分数高的课程编号和分数

select 课程编号,分数 from grade where 学号='0001' and 分数>any (select 分数 from grade where 姓名='0002')

列出学号为0001的学生的分数比学号为0002的学生的最高成绩还要高的课程编号和分数 select 课程编号,分数 from grade where 学号='0001' and 分数>all (select 分数 from grade where 姓名='0002') 连接查询 8

查询分数在80~90范围内的学生的学号姓名分数[WHERE连接查询] select student_info.学号,姓名,分数 from student_info,grade where student_info.学号=grade.学号 and 分数 between 80 and 90

查询学习C语言程序设计课程的学生的学号姓名分数 [INNER JOIN 连接查询] select student_info.学号,姓名,分数 from student_info inner join

grade on student_info.学号=grade.学号

inner join course on 课程名称='C语言程序设计'

查询所有男同学的选课情况要求列出学号姓名课程名称分数

select a.学号,a.姓名,c.课程名称,b.分数 from student_info a inner join grade b on a.=b.学号

inner join course c on b.课程编号=c.课程编号 where(a.性别='')

查询每个学生的所选课程的最高成绩要求列出学号姓名课程编号分数

select a.学号,c.姓名,a.课程编号,a.分数 from grade a inner join student_info c on a.学号=c.学号

where(a.分数=(select max(b.分数)from grade b where a.学号=b.学号))

查询所有学生的总成绩要求列出学号姓名总成绩没有选修课程的学生的总成绩为空

select a.学号,a.姓名,b.总成绩 from student_info a left outer join(select 学号,sum(分数) as 总成绩 from grade group by 学号)b on a.学号=b.学号

grade表添加数据行学号为'0004'课程编号为K006分数为76‘。查询所有课程的选修情况要求列出课程编号课程名称选修人数curriculum表中没有的课程列值为空[使用右外连接。] insert into grade(学号,课程编号,分数) values('0004','K006',76)

select a.课程编号,a.课程编号,a.课程编号,b.选修人数 from course a right outer join(select 程编号,count(*) as 选修人数 from course group by 课程编号)b on a.课程编号=b.课程编号

实验名称 数据查询 实验日期

实验目的 掌握使用Transact-SQLSELECT语句进行基本查询的方法 掌握使用SELECT语句进行条件查询的方法

掌握SELECT语句的GROUP BYORDER BY以及UNION子句的作用和使用方法 掌握嵌套查询的方法

掌握连接查询的操作方法

实验环境 Windows 7 SQL Server 2008 实验内容 按实验步骤完成简单查询嵌套查询连接查询

实验中要求在查询设计器中用语句完成的实验请在这里填写他们的语句并标上题号 试验思考 回答以下问题

1条件查询order by ,INTO,UNION,GROUP BY ,HAVING这些关键词意思是什么 4在嵌套查询中SOMEANYIN 关键词用法说明 5在连接查询中述说内连接外连接交叉连接特点




手写回答以下问题”,若空白处不够请附页完成




本文来源:https://www.wddqxz.cn/da8ca51ee718964bcf84b9d528ea81c758f52e93.html

相关推荐