数据库实验答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验3 使用T-SQL语言完成单表查询

一、实验目的

掌握使用T-SQL语言完成单表查询

掌握常用谓词的用法

掌握where子句的用法

掌握order by 子句的用法

掌握group by 子句和having短语的用法

二、实验环境

Microsoft SQL Server 2000。

三、实验内容和要求

1.查询全体学生的详细信息。

2.查询所有课程的详细信息。

3.查询所有选课记录的详细信息,要结果表中的列名以中文的形式显示,分别为:学号,课程号,

成绩。

4.查询已被学生选修了的课程的编号。

5.查询系别编号为“d002”的学生的姓名和性别。

6.查询年龄在19至21岁或者性别为“女”的学生的学号和所在系别编号。

7.查询系别编号为d001、d002和d003的学生的学号和姓名。

8.查询课程名为“C_”开头的课程名和学分。

9.某些学生入学后还没有确定所在的系,查询还没有确定系的学生的姓名。

10.查询成绩大于60分的学生的学号、课程号和成绩,并将查询结果按课程编号升序排列,同一课

程的成绩按分数降序排列。

11.查询学校所开设的总的课程数。

12.计算2号课的学生成绩总和以及平均成绩,对应的列名分别为“总成绩”和“平均成绩”。

13.查询选修了3号课程的学生的最高分和最低分,对应的列名分别为“最高分”和“最低分”。

14.求各个系别的编号以及各系的人数。

15.查询选课人数大于等于2人的课程编号以及选课的人数。

16.查询学生200215122选修课程的总成绩对应的列名为“总成绩”,并显示出学号。

17.查询有2门以上课程是80分以上的学生的学号及课程数。

18.查询选修了1号课的学生的学号和成绩,结果按成绩降序、学号升序排列。

实验1 使用T-SQL语言建库、建表

实验2 向表中增、删、改数据

四、实验目的

掌握使用T-SQL建库、建表、修改表;

掌握使用T-SQL对表中数据进行插入、删除和修改。

五、实验环境

Microsoft SQL Server 2000。

六、实验内容和要求

19.建立数据库STDB

20.在数据库STDB中建立四个表:

Student表

Course表

Sc表

21.分别向以上四个表中增加数据。department表:

Student表:

Course表:

SC表:

22.将学生200215122的年龄改为21岁。

23.将所有学生的所有成绩增加5分。

24.删除7号课程的记录。

25.向学生表增加新列“血型”,并记录下学生表中已存在学生的血型信息。

实验4 使用T-SQL语言完成多表查询

七、实验目的

掌握使用T-SQL语言完成等值连接查询

掌握使用T-SQL语言完成自身连接查询

掌握使用T-SQL语言完成外连接查询

掌握使用T-SQL语言完成嵌套查询

掌握使用T-SQL语言完成集合查询

掌握常用谓词在嵌套查询中的用法

八、实验环境

Microsoft SQL Server 2000。

九、实验内容和要求

26.查询每个学生的学号、姓名、性别、所在系的名称、选修的课程名、学分以及成绩。

27.查询所有课程的课程编号、课程名称、学分、选修该课程的学生编号以及成绩。

28.查询选修了1号课程且不及格的学生的学号、姓名。(要求分别用连接查询和嵌套查询完成)

29.查询姓名为“刘晨”的学生选修的课程名和学分。(要求分别用连接查询和嵌套查询完成)

30.查询CS系、IS系和MA系的学生的学号、姓名和性别。

31.查询200215121号同学选修课程的总学分数,显示出姓名和总学分数。

32.找出每个学生小于他选修课程平均成绩的学号和课程号。

33.查询200215121号同学所选修的课程中,成绩低于其他同学选修的某一课程成绩的课程,要求显

示出其课程号和成绩。

34.查询200215121号同学所选修的课程中,成绩低于其他有成绩的同学选修的所有课程成绩的课程,

要求显示出其课程号和成绩。

35.查询200215121号同学选修课程的课程号和课程名。(要求分别使用包含EXISTS谓词的嵌套查

询以及连接查询完成)

36.查询既选修了课程1又选修了课程2的学生的学号。(要求使用嵌套查询完成)

37.查询选修了课程1或者选修了课程2的学生的学号。(要求分别用集合查询和多重条件查询完成)--实验1、2

create database stdb1

go

use stdb1

go

create table department

(

deptno char(10) primary key,

dname varchar(50)

)

go

create unique index deptname on department(dname) go

create table student

(

sno char(9) primary key,

sname varchar(20) not null,

ssex char(2),

sage int,

deptno char(10),

foreign key (deptno) references department(deptno) )

create table course

(

cno char(4) primary key,

cname varchar(40) unique,

cpno char(4),

ccredit smallint

)

go

create table sc

(

sno char(9),

cno char(4),

grade int,

primary key(sno,cno),

foreign key (sno) references student(sno),

foreign key (cno) references course(cno)

)

--3

相关文档
最新文档