实验五 SQL语言查询

实验五 SQL语言——SELECT查询操作

(一)、实验目的

1、了解查询的概念和方法;

2、掌握查询分析器或企业管理器中执行SECELT操作的方法;

3、掌握SECELT语句在单表查询中的应用;

4、掌握SECELT语句在多表查询中的应用;

5、掌握SECELT语句在复杂查询中的使用方法。

(二)、实验内容与要求

分别在查询分析器或企业管理器中对数据库student中的表执行以下查询操作并查看结果:

⑴查询所有学生的基本信息;

⑵查询“计算机”系学生的基本信息;

⑶查询姓王的学生的学号、姓名和性别;

⑷查询“计算机”系学生年龄在19到21之间的学生的学号姓名;

⑸查询王军老师讲授课程的课程号和课程名;

⑹查询选修了“C0001”课程的学生学号和姓名;

⑺查询选修了课程名为“管理信息系统”的学生姓名;

⑻查询选修了课程名为“管理信息系统”且成绩在80分以上的学生的学号、姓名和成绩;

⑼查询学生的最大年龄;

⑽找出“计算机”系学生的最大年龄;

⑾统计“计算机”系学生的人数;

⑿统计各系学生的人数,结果按升序排列;

⒀按系统计各系学生的平均年龄,结果按降序排列;

⒁统计选修每门课程的学生人数及各门课程的平均成绩;

⒂查询选修了3门及3门以上课程的学生的学号。(三)、实验仪器与材料

硬件:计算机、256M以上内存,40G以上硬盘。

软件:Windows XP,SQL Sever2000

(四)、实验步骤:

数据库实验5答案

实验五:数据库综合查询 一、实验目的 1.掌握SELECT语句的基本语法和查询条件表示方法; 2.掌握查询条件种类和表示方法; 3.掌握连接查询的表示及使用; 4.掌握嵌套查询的表示及使用; 5.了解集合查询的表示及使用。 二、实验环境 已安装SQL Server企业版的计算机(120台); 具有局域网环境,有固定IP; 三、实验学时 2学时 四、实验要求 1.了解SELECT语句的基本语法格式和执行方法; 2.了解连接查询的表示及使用; 3.了解嵌套查询的表示及使用; 4.了解集合查询的表示及使用; 5.完成实验报告; 五、实验内容及步骤 1.利用Transact-SQL嵌套语句实现下列数据查询操作。 1) 查询选修了计算机体系结构的学生的基本信息。 select*from student where Sno in(select Sno from course where Cno in(select Cno from sc where Cname='计算机体系结构')) 2) 查询年龄比李勇小的学生的学号和成绩。 select a.sno,grade from student a,course where a.sno=course.sno and sage<(select sage from student where sname='李勇') 3) 查询其他系中比系编号为‘D1’的学生中年龄最小者要大的学生的信息。 select*from student where dnum<>'D1'AND SAGE>(select min(sage)from student where dnum='D1') 4) 查询其他系中比系编号为‘D3’的学生年龄都大的学生的姓名。 select*from student where dnum<>'D3'AND SAGE>all(select

数据库原理中SQL语句实验指导书及答案

实验四:管理SQL Server表数据 一、实验目的 熟悉数据表结构及使用特点; 熟悉使用Management Stuio界面方式管理数据表数据; 熟悉使用T-SQL语句管理数据表数据。 二、实验环境 已安装SQL Server 2005 企业版的计算机(13台); 具有局域网环境,有固定IP; 三、实验学时 2学时 四、实验要求 了解SQL Server数据表数据的管理方法; 了解SQL Server数据类型; 完成实验报告(部分题只需给出关键语句)。 五、实验内容及步骤 以课本指定的数据库为例,并依据数据表的结构创建相对应的数据表(student、course、sc),请分别使用Management Stuio界面方式及T-SQL 语句实现进行以下操作: 向各个数据表中插入如下记录: 学生信息表(student)

课程信息表(course) 选课信息表(sc)

insert into student.dbo.sc values('20051501','1',75) insert into student.dbo.course values('1','数据库','5',4) insert into student.dbo.student values('201015001','赵菁菁','女',23,'CS') 2.修改CS系姓名为“李勇”的学生姓名为“李咏”; update student set Sname='李咏' where Sname='李勇' 3.修改课程“数据处理”的学分为3学分; 3.update course set Ccredit=3 where Cname ='数据处理' 4.将选修课程“1”的同学成绩加5分; 4.update sc set Grade =Grade+5 where Cno='1' 5.将选修课程“大学英语”的同学成绩加5分; update sc set Grade=Grade+5 from course,sc where https://www.360docs.net/doc/6419028128.html,o=https://www.360docs.net/doc/6419028128.html,o and https://www.360docs.net/doc/6419028128.html,ame='大学英语'

数据库原理及应用实验指导实验SQL语言SELECT查询操作

实实验验44 S S Q Q L L 语语言言————S S E E L L E E C C T T 查查询询操操作作 实验示例 实验示例中要使用包括如下三个表的“教学管理”数据库JXGL : (1)学生表Student ,由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,记作:Student(Sno,Sname,Ssex,Sage,Sdept),其中主码为Sno 。 (2)课程表Course ,由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,记作:Course(Cno,Cname,Cpno,Ccredit),其中主码为Cno 。 (3)学生选课SC ,由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,记作:SC(Sno,Cno,Grade),其中主码为(SNO,CNO)。 1、在SQL SERVER 查询分析器或企业管理器(以具有相应操作权限的某用户登录)的SQL 操作窗口中执行如下命令创建数据库。需要说明的是不同数据库系统其创建数据库的命令或方式有所不同。 CREATE DATABASE JXGL 2、刷新数据库目录后,选择新出现的JXGL 数据库,在SQL 操作窗口中,创建Student 、SC 、Course 三表及表记录插入命令如下: Create Table Student ( Sno CHAR(5) NOT NULL PRIMARY KEY(Sno), Sname VARCHAR(20), Sage SMALLINT CHECK(Sage>=15 AND Sage<=45), Ssex CHAR(2) DEFAULT '男' CHECK (Ssex='男' OR Ssex='女'), Sdept CHAR(2)); Create Table Course ( Cno CHAR(2) NOT NULL PRIMARY KEY(Cno), Cname VARCHAR(20), Cpno CHAR(2), Ccredit SMALLINT); Create Table SC ( Sno CHAR(5) NOT NULL CONSTRAINT S_F FOREIGN KEY REFERENCES Student(Sno), Cno CHAR(2) NOT NULL, Grade SMALLINT CHECK ((Grade IS NULL) OR (Grade BETWEEN 0 AND 100)), PRIMARY KEY(Sno,Cno), FOREIGN KEY(Cno) REFERENCES Course(Cno));

数据库查询语言SQL的基本语法与用法

数据库查询语言SQL的基本语法与用法 SQL是结构化查询语言(Structured Query Language)的缩写,是一种常用的关系型数据库管理系统(RDBMS)的查询语言。SQL语言的基本语法和用法非常重要,它用于从数据库中检索数据、插入、更新、删除数据以及对数据库进行各种操作。本文将介绍SQL的基本语法和用法,帮助读者更好地理解和应用SQL语言。 一、SQL语法基础 1. 查询语句格式 SQL查询语句通常由SELECT、FROM、WHERE、GROUP BY、HAVING和ORDER BY等关键字组成。其中,SELECT用于选择要检索的列,FROM用于指定要查询的表,WHERE用于设置查询条件,GROUP BY用于按照指定列对结果进行分组,HAVING用于设置分组筛选条件,ORDER BY用于对结果进行排序。 2. 基本的查询语句 使用SELECT关键字来选择要检索的列,FROM关键字后面指定要查询的表。 示例: SELECT 列名1, 列名2 FROM 表名; 示例中,列名1和列名2表示要检索的列,表名表示要查询的表。 3. 条件查询 在SQL中,可以通过WHERE子句来指定查询的条件。 示例:

SELECT 列名1, 列名2 FROM 表名 WHERE 条件; 示例中,WHERE后的条件用于筛选满足特定条件的数据。 4. 排序查询 使用ORDER BY关键字对查询结果进行排序。 示例: SELECT 列名1, 列名2 FROM 表名 ORDER BY 列名 ASC|DESC; 示例中,ASC表示按升序排序,DESC表示按降序排序。 二、SQL查询语句的应用 1. 查询表中的所有数据 可以通过SELECT * FROM 表名来查询表中的所有数据。示例: SELECT * FROM 表名; 示例中的*表示所有列,默认会将表中所有列都检索出来。 2. 指定查询的列

实验五答案SQL语句查询

1、列出所有不姓刘的所有学生 select sname,sno from student where sname not like'刘%' 2、列出姓“沈“且全名为3个汉字的学生 select sname from student where sname like'沈____' 3、显示在1985年以后出生的基本信息 select sno学号,sname姓名,出生年份=year(getdate())-sage from student where year(GETDATE())>1985 4、按照“性别、学号、姓名、年龄、院系“的顺序列出学生信息,其中性别按以下规定显示:性别为男显示为男生,性别为女显示为女生,其它显示为”条件不明“ select ssex= case when ssex='男'then'男生' when ssex='女'then'女生' else'情况不明' end,sno,sname,sage,sdept from student 5、查询出课程名含有‘数据‘字串的所有课程基本信息 select sno,https://www.360docs.net/doc/6419028128.html,o,cname,grade,ccredit from sc,course where cname like'数据%'and https://www.360docs.net/doc/6419028128.html,o=https://www.360docs.net/doc/6419028128.html,o 6、显示学号第八位或者第九位是1、2、3、4或9的学生的学号、姓名、性别、年龄、及院系select sno,sname,ssex,sage,sdept from student where sno like'2005150[1-4]%'or sno like'2005150[0-9][1-4]' or sno like'20051509%'or sno like'2005150[0-9]9' 7、列出选修了‘1‘课程的学生,按成绩的降序排列 select student.sno,sname,grade from student,sc where Cno='1' order by Grade desc 8、列出同时选修‘1‘号课程和’2‘号课程的所有学生的学号 select sno,Cno from sc where cno=1 or cno=2 9、列出课程表中全部信息,按先选修课的升序排列 select* from course order by cpno asc

实验5 sql语句练习——图书馆数据库答案

实验5sql语句练习——图书馆数据库 实验5 sql语句练习——图书馆数据库 实验目的 (1)了解SQL Server数据库的逻辑结构和物理结构; (2)了解表的结构特点; (3)了解SQL Server的基本数据类型; (4)了解空值概念; (5)学会在企业管理器中创建数据库和表; (6)学会使用T-SQL语句创建数据库和表。 (7)学会使用T-SQL语句更新数据。 (7)学会使用T-SQL语句创建多种查询。 实验准备 首先要明确,能够创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用户。 其次创建数据库必须要确定数据库名、数据库大小(最初的大小、最大的大小、是否允许增长及增长方式)和存储数据库的文件。 然后,确定数据库包含哪些表,以及所包含的各表的结构,还要了解SQL Server的常用数据类型,以创建数据库的表。 此外还要了解两种常用的创建数据库、表的方法,即在企业管理器中创建和使用T-SQL的CREATE DA TABASE语句。 实验内容 假设有5本书 设有一图书馆数据库,其中包括3个表,即图书表、读者表和借阅表。三个表的结构如图: 列名说明数据类型约束说明 书号图书唯一的编号定长字符串,长度为10 主键 书名图书的名称定长字符串,长度为50 空值 作者图书的编著者名定长字符串,长度为30 空值 出版社图书的出版社定长字符串,长度为30 空值 单价出版社确定的图书的单价浮点型,Float 空值 读者表结构 假设有10位读者

列名说明数据类型约束说明 读者号读者唯一的编号定长字符串,长度为10 主键 姓名读者姓名定长字符串,长度为8 非空值 性别读者性别定长字符串,长度为2 非空值 办公电话读者办公电话定长字符串,长度为8 空值 部门读者所在部门定长字符串,长度为30 空值 列名说明数据类型约束说明 读者号读者的唯一编号定长字符串,长度为10 外码,引用读者表的 主键 书号图书的唯一编号定长字符串,长度为20 外码,引用图书表的 主键 借出日期借出图书的日期定长字符串,长度为8 非空值 归还日期归还图书的日期定长字符串,长度为8 空值 主键为:(读者号,图书号)(1)用Sql语句创建图书馆数据库 Create database Lab05 (2)用Sql语句创建上述3个表 create table book ( bookId char(10)primary key, bookName varchar(50), bookWriter varchar(30), bookPublish varchar(30), bookPrice float ) create table reader ( readerId char(10) primary key, readerName varchar(8)not null, readerSex char(2)not null, readerOfficeTel char(8), readerDepartment varchar(30) ) create table 借阅表 ( readerId char(10), bookId char(10), checkOutTime char(8), checkInTime char(8), primary key(readerId,bookId), foreign key (readerId) references reader(readerId), foreign key (bookId) references book(bookId), )

实验五---SELECT数据查询

实验五---SELECT数据查询

实验五、SELECT 数据查询 一、实验目的 要求学生熟练使用T-SQL语句进行数据查询,掌握SELECT语句的基本结构和多表连接查询、子查询、分组查询、查询结果的排序等操作。二、实验内容 (1)利用SELECT查询语句进行单表、多表查询设计。 (2)利用SELECT语句进行子查询和外连接查询. (3)设计ORDER BY查询子句以及带有GROUP BY 的查询子句。 三、实验指导 1、SELECT 基本语句格式 SELECT查询的基本语句包含要返回的列、要选择的行、放置行的顺序和将信息分组的规范,其语句格式如下: 2、简单查询实验 利用T-SQL语句在JXGL数据库中实现简单查询

操作: (1)查询数学系(MA)学生的学号和姓名。 (2)查询选修了课程的学生的学号 (3)查询选修了课程号为“C2”的学生的学号和成绩,并对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。

(4)查询选修了课程为“C2”的成绩在80到90分之间的学生的学号和成绩,并将成绩乘以0.8输出。 (5)查询数学系(MA)或计算机科学系(CS)中张的学生信息

(6)查询缺少了成绩的学生学号和课程号 3、连接查询实验 利用T-SQL语句在JXGL数据库中实现下列连接查询: (1)查询每个学生的情况以及他(她)所选修的课程 (2)查询学生的学号、姓名、选修的课程名及成绩 (3)查询选修“离散数学”课程且成绩为90分以上的学号、姓名及成绩。

(4) 查询每一门课的间接先修课(即先修课的先修课) 4、嵌套查询 利用T-SQL语句在JXGL数据库中实现下列嵌套查询操作: (1)查询选修了“离散数学”的学生的学号和姓名。

数据库查询语言SQL基础

数据库查询语言SQL基础 数据库查询语言SQL(Structured Query Language)是用于与关系型数据 库进行交互的标准化语言。通过SQL,我们可以轻松地查询和操作数据库中的数据。本文将介绍SQL的基础知识,包括SELECT、INSERT、UPDATE、DELETE等常用操作。 1. SELECT语句 SELECT语句是SQL中最基础的查询语句,用于从数据库中检索数据。 它的一般语法如下: SELECT 列名1, 列名2, ... FROM 表名 WHERE 条件; 其中,列名表示想要检索的列,可以使用通配符“*”来表示所有列。表名 表示从哪个数据表中检索数据。条件是可选的,用于筛选满足特定条件的数据。例如,我们可以使用以下语句来检索employee表中所有的员工姓名和 工资: SELECT 姓名, 工资 FROM employee; 2. INSERT语句 INSERT语句用于将新的数据插入到数据库中的数据表中。它的语法如下:

INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...); 其中,表名表示需要插入数据的目标表名。列名表示需要插入数据的对 应列名。值表示要插入的具体数据。例如,我们可以使用以下语句将新的员 工信息插入employee表: INSERT INTO employee (姓名, 工资) VALUES ('张三', 5000); 3. UPDATE语句 UPDATE语句用于更新数据库中已有数据的值。它的语法如下:UPDATE 表名 SET 列名 = 新值 WHERE 条件; 其中,表名表示需要更新数据的目标表名。列名表示需要更新的对应列名。新值表示更新后的值。条件是可选的,用于筛选需要更新的数据。例如,我们可以使用以下语句将员工的工资更新为6000: UPDATE employee SET 工资 = 6000 WHERE 姓名 = '张三'; 4. DELETE语句

SQL语言查询

1、查询选c1课程并及格的学生总人数及最高分、最低分。 select count(*),max(grade),min(grade) from enrolls where cno='c1' and grade>60 2、按学号求每个学生所选课程的平均成绩超过88分以上的学生。 select sno,avg(grade) as avg_grade from enrolls group by sno having avg(grade)>88 3、找出选课学生超过2人的课程的平均成绩及选课人数。 select cno,avg(grade),count(*) as st_number from enrolls group by cno having count(*)>2 4、查询student中男生的每一年龄组(超过并包含2人)有多少,要求查询结果按人数升序排列,人数相同时按年龄降序排列。 select age,count(sno) as number from student where sex='男' group by age having count(sno)>=2 order by number,age desc 5、查询与张春明在同一个系学习的学生。 select s1.sno,s1.sname,s1.department from student s1,student s2 where s1.department=s2.department and s2.sname='张春明' select sno,sname,department from student where department=(select department from student where sname='张春明') 6、查询其他系中比计算机系中所有学生年龄都大的学生姓名及年龄。此查询用any或all 谓词实现,或用集函数两种方法。 select sname,age from student where age>all(select age from student where department='计算机') and department<>'计算机' select sname,age from student where age>all(select max(age) from student where department='计算机') and department<>'计算机' 7、查询选修了所有课程的学生姓名。 select sname from student where not exists (select * from courses where not exists (select * from enrolls where sno=student.sno and cno=https://www.360docs.net/doc/6419028128.html,o)) 8、查询与95022同学选修课程一样的同学的学号与姓名。 select sno,sname from student

SQL查询实验报告讲解

实验题目:sql查询——简单查询 【实验目的与要求】 一、实验目的 1. 熟练掌握单表查询的select语法结构; 2. 通过观察查询结果, 体会select语句的实际应用。 二、实验要求 1.实验前做好上机实验的准备,针对实验内容,认真复习与本次实验有关的知识,完成 实验内容的预习准备工作。 2.能认真独立完成实验内容。 3.实验后做好实验总结,根据实验情况完成实验报告。 【实验环境】 pc机、windows xp系统+sql server 2005 【实验内容】 基于实验一建立的educ 数据库,用transact-sql 语句实现如下查询: 1.选修了课程的学生学号; 2.计算机系的学生; 3.计算机系学生的学号和姓名; 4.计算机系和信息系的男生信息;(提示:逻辑运算符的优先级顺序) 5.选修上课编号为1且成绩在80-90 之间的学生学号和成绩,并将成绩乘以系数0.75 输出;(提示:新输出项要命名列标题) 6.没有成绩的学生的学号和上课编号; 7.选修上课编号为1或4的学生的学号和成绩,并要求对查询结果按成绩的降序排列, 如果成绩相同则按学号的升序排列;(提示:查询输出哪几项) 8.1995年1月1日(含)以后出生的学生信息,并按姓氏拼音字母顺序从前往后排列(注: 默认排序规则通常是chinese_prc_ci_as,汉字按照汉语拼音的字典顺序来排序:首先按拼 音,拼音相同按声调,声调相同按笔画数。) 9.姓李和刘的学生的信息; 10.不姓张王李刘的学生的学号、姓名和性别; 11.选修课程的学生人数; 12.选修上课编号为1的学生的最高分; 13.每位学生所修课程的平均分; 14.选修两门以上课程的学生; 15.总成绩大于200 分的学生的学号和总成绩。(提示:group by分组统计) 【实验方法和步骤】 1.新建查询,在查询编辑器中依次按照如上实验内容编写select语句完成查询。 2.每执行一条查询语句,在查询结果网格中查看执行结果是否正确。 【实验结果】 select distinct sno from student_course select * from student where dno = 计算机 select sno,sname from student where dno = 计算机 select * from student where sex =男 and dno in(计算机,信息) select sno,0.75*score as 成绩from student_course where tcid =1 and score between 80 and 90

数据库实验5 多表查询及视图

实验五:多表查询及视图 一、实验目的 1.掌握SELECT语句的基本语法和查询条件表示方法; 2.掌握数据表的连接查询、嵌套查询、集合查询的使用方法。 3.掌握创建及管理视图的方法; 二、实验学时 2学时 三、实验要求 1.了解SELECT语句的基本语法格式和执行方法; 2.掌握连接查询、嵌套查询和集合查询的语法规则; 3.掌握使用界面方式和命令方式创建及管理视图; 4.完成实验报告; 四、实验内容 1.以实验3数据库为基础,请使用T-SQL 语句实现进行以下操作: 1)查询选修了‘数学’或者‘大学英语’的学生学号、姓名、所在院系、选修 课程号及成绩; 2)查询与‘张力’(假设姓名唯一)年龄不同的所有学生的信息; 3)按照“学号,姓名,所在院系,已修学分”的顺序列出学生学分的获得情况。 其中已修学分为考试已经及格的课程学分之和; 4)查找选修了至少一门和张力选修课程一样的学生的学号、姓名及课程号; 5)查询只被一名学生选修的课程的课程号、课程名; 6)使用嵌套查询出选修了“数据结构”课程的学生学号和姓名; 7)使用嵌套查询查询其它系中年龄小于CS系的某个学生的学生姓名、年龄和 院系; 8)使用ANY、ALL 查询,列出其他院系中比WM系所有学生年龄小的学生的姓名; 9)使用集合查询查询选修1号课程同时选修2号课程的同学的学号与姓名;2.以实验数据库为基础数据,利用对象资源管理器创建以下视图: 1)创建所有学生学号、姓名及年龄的信息视图v_stu_info 2)创建CS系学生基本信息视图v_stu_cs 3)创建选修课成绩在80分以上的学生的信息视图v_stu_80,包括学生基本情况及成绩。 3. 以实验数据库为基础数据,请使用T-SQL语句完成以下内容,并将SQL语句写在实验报告册中:

数据库实验报告-SQL语句查询

《数据库原理》实验报告(实验名称:SQL查询语句)

一、实验目的 数据查询语句是SQL语句的重要组成部分,是编程人员与数据库管理人员必不可少的工具,通过实验达到以下目的: (1)掌握SELECT 语句的基本语法,加深学生对查询语句基本概念的理解。(2)掌握简单的单表查询。 (3)掌握连接查询。 二、实验内容: 实验数据:实验二所建的数据库及表,实验三录入表中的数据。 1、简单查询 (1)若干列或行的选择 (2)*、distinc、between…and… 、 in、 like等运算符的使用 (3)计算列、常量或空值的查询 (4)查询结果排序和分组 2、连接查询 (1)内连接和自身连接 (2)外连接 (3)复合条件连接 (4)多表连接 (5)对表和列使用别名 三、实验环境 SQL server 2000,pc机一台 四、程序源码与运行结果 1.查询所有学生的全部信息 2. 查询全体学生的学号与姓名

3 查询年龄在20岁以下的学生姓名及其出生年份,并为出生年份加上标题 4 查询选修了课程的学生学号,并消除重复行 5 查询年龄在20~23岁的学生信息(用between… and…表示查询条件) 6 查询全体学生情况,查询结果按班级编号升序排列,同一班的学生按年龄降序排列 7 查询所有姓赵学生的姓名、学号和性别 8 查询名字中第2个字为“小”字的学生姓名 9 查询电气信息工程学院(dx) 和计算机学院(jsj)的学生(要求:使用IN关

键字表示查询条件 10 查询没有考试成绩的学生学号和课程号 11 查询有2门以上课程是90分以上的学生的学号及(90分以上的)课程数(先用group by 分组,再用Having限定分组条件) 12 查询学生总人数 13 查询学号为‘’学生的平均成绩和总成绩,并为总成绩和平均成绩取别名。 14 查询c01号课程的最高分数和最低分 15 查询没有考试成绩的学生学号和课程号

数据库系统原理实验报告_SQL查询语句

数据库系统原理 实验报告 :xxx 学号:xxxxxxxx 专业:xxxxx 日期:xxxxx

Lab2 一、实验目的 进一步熟悉关系数据库标准语言SQL。 二、实验环境 1)Windows 10 2)SQL Server 2017 三、实验容 给定如学生表、课程表和学生作业表所示的信息。 表1 学生表 表2 课程表 表3 学生作业表

K001 0433 60 75 75 K001 0529 70 70 60 K001 0531 70 80 80 K001 0591 80 90 90 K002 0496 80 80 90 K002 0529 70 70 85 K002 0531 80 80 80 K002 0538 65 75 85 K002 0592 75 85 85 K006 0531 80 80 90 K006 0591 80 80 80 M001 0496 70 70 80 M001 0591 65 75 75 S001 0531 80 80 80 S001 0538 60 80 写出如下SQL语句: 1.查询数据库中有哪些专业班级。(5分) Sql语句: SELECT专业班级 FROM学生表; 查询结果截图: 2.查询在1986年出生的学生的学号、和出生日期。(5分) Sql语句: SELECT学号,,出生日期 FROM学生表 WHERE出生日期LIKE'1986%'; 查询结果截图:

3.查询05级的男生信息。(5分) Sql语句: SELECT* FROM学生表 WHERE学号LIKE'05%'AND性别='男'; 查询结果截图: 4.查询没有作业成绩的学号和课程号。(5分) Sql语句: SELECT学号,课程号 FROM学生作业表 WHERE作业1成绩IS NULL OR作业2成绩IS NULL OR作业3成绩IS NULL; 查询结果截图: 5.查询选修了K001课程的学生人数。(5分) Sql语句: SELECT COUNT(DISTINCT学号) FROM学生作业表 WHERE课程号='K001'; 查询结果截图:

数据库实验五六1

实验五视图、索引及数据更新 一、实验目的: 熟练掌握索引的建立与删除的方法,熟练掌握SQL的应用, 熟练掌握数据插 入、修改和删除的使用,为后继学习作准备。 二、实验属性(验证性) 1.了解并掌握SQL查询分析器及企业管理器的使用; 2.掌握基本表的定义、删除与修改。 三、实验原理 SQL语言应用。 四、实验步骤: (1) 启动Oracle的SQL Developer或者SQL Plus,或者SQL Server 查询分析器; (2) 对于Oracle11g的SQL Plus需要进行登录,对于Oracle11g的SQL Developer需要进行建立连接。 1 建立索引 建立唯一索引: 例3.1 为学生选课数据库中的Students,Courses,SC三个表建立索引。其中Students表按Sname升序建唯一索引,Courses表按Cname升序建唯一索引,SC表按Sno(学号)升序和Cno(课程号)号降序建唯一索引。

查看自己建立的索引: 2 删除索引 例3.2 删除基本表SC上的Rep_SCno索引。 然后查询看索引是否还存在。理解索引的意义。 例3.3 删除基本表student上的Rep_Sno索引。 3 建立视图 例3.4 建立数学系学生的视图C_Student,并要求进行修改和插入操作时仍需保证该视图只有数学系的学生,视图的属性名为Sno,Sname,Sage,Sdept。

例3.5 建立学生的学号(Sno)、姓名(Sname)、选修课程名(Cname)及成绩(Grade)的视图Student_CR。 例 3.6定义一个反映学生出生年份的视图student_birth(sno,sname,s_birth,ssex,sdept)。 视图建立后,使用命令查询自己创建的视图: 4 查询视图 例3.7 在数学系的学生视图C_Student中找出年龄(Sage)小于20岁的学生姓名(Sname)和年龄(Sage)。

相关文档
最新文档