实验三 数据查询
3数据库查询实验(1)

实验三数据库查询实验(1)数据库的简单查询和连接查询实验课时安排:2课时一、实验目的和要求使学生掌握SQL Server查询分析器的使用方法.加深对SQL和Transact-SQL语言的查询语句的理解。
熟练掌握简单表的数据查询、数据排序和数据联结查询的操作方法。
二、实验内容1 简单查询操作该实验包括投影、选择条件表达、数据排序、使用临时表等。
2 连接查询操作该实验包括等值连接、自然连接、求笛卡尔积、一般连接、外连接、内连接、左连接、右连接和自连接等。
三、实验方法1 将查询需求用Transact-SQL语言表示。
2 在SQL Server查询分析器的输入区中Transact-SQL查询语句。
3 设置查询分析器结果区为Standard Execute(标准执行)或Execute to Grid方式。
4 发布执行命令,查看查询结果.如果结果不正确,进行修改.直到正确为止。
5 查询分析器及使用方法。
查询分析器是在开发数据库应用系统时使用最多的工具。
查询分析器的主要作用是编辑Transact-SQL,将其发送到服务器,并将执行结果及分析显示出来(或进行存储).查询分析功能主要通过测试查询成本,判断该查询是否需要增加索引以提高查询速度,并可以实现自动建立索引的功能。
在查询生成器中的左边窗口是对象测览器,其中按树结构列出了数据库对象;右上方是SQL代码区域.用于输入SQL的查询语句;右下方为结果区,用于显示查询结果和分析结果、对于T-SQL语句的执行结果,在结果区中可以有4种不同的输出形式:标准执行将结果直接显示在结果区网格执行将结果以表格形式显示在结果区.计划执行显示执行计划;索引分析为在结果区中显示查询的索引情况。
上述输出形式,可以通过菜单或按钮选择。
四、实验步骤1 基本操作实验(1)简单查询实验l)用Transact-SQL语句表示下列操作.在学生选课库中实现其数据查询操作.①求数学系学生的学号和姓名。
实验三 数据库查询

12、在“学生成绩表”中列出已登记成绩的学生个数;
13、在学生成绩表中,显示所有学生记录,按照平时成绩和期末成绩降序排列;
四、分析与讨论
通过本次实验,基本掌握了数据的一些基本查询,可以对单表的简单查询和复杂查询,两表的连接查询和嵌套查询等等,在实验中要注意一下几点:
1、在写查询语句时,要注意查询的属性名称要与原表中的属性名称要一样,否则会出现错误,导致无法查询;
2、编写select语句,显示“课程信息表”中的所有字段;
3、在学生档案表中,显示“XXXX.XX.XX”的格式显示出生日期。
4、在学生档案表中查询所有湖北学生的基本信息;
5、在教学任务表中列出所有任课教师ID,将重复的记录去掉;
6、在学生档案表中列出所有学生籍贯,将重复的记录去掉;
7、在学生成绩表中,显示学生所有记录,并期末成绩降序排列;
实验内容三
实验序号:三 实验项目名称:数据库查询Βιβλιοθήκη 实验地点指导教师李晖
实验时间
一、实验目的及要求
熟练掌握SQL SELECT语句,能够运用该语句完成各种查询。
二、实验设备(环境)及要求
台式机、SQLServer2005
三、实验内容与步骤
1、编写select语句,显示“教师档案表”中的姓名、性别、职称、单位字段:
8、在学生成绩表中,求平时成绩的最大值、最小值、平均值;
9、将学生成绩表中所有期末成绩大于80分的学生的学号、课程ID、平时成绩和期末成绩的查询结果输出到“优等生成绩表”的新建表中,然后对“优等生成绩表”进行查询。
10、列出所有女教师的ID、姓名以及所带课程;
11、查询北京学生的学号、课程ID和选课类别;
实验三 数据查询结果

实验三数据查询一、实验目的掌握查询语句的使用方法,重点掌握连接查询和嵌套查询,理解查询的执行过程。
二、预备知识查询语句的基本格式如下:SELECT <目标列名序列> --需要哪些列FROM <数据源> --来自于哪些表[WHERE <检索条件>] --根据什么条件[GROUP BY<分组依据列>] --分组[HA VING <组提取条件>] --筛选[ORDER BY<排序依据列>] --排序三、实验内容1、还原实习二中创建的“gongcheng”数据库和实习一中创建的“学生选课管理”数据库。
2、在“gongcheng”数据库中完成以下查询:(1)查询所有供应商所在的城市。
查询语句:select cityfrom s查询结果:(2)查询零件重量在10-20之间(包括10和20)的零件名和颜色。
查询语句:select pname,colorfrom Pwhere Weight between 10 and 20查询结果;(3)查询工程项目的总个数。
select count(pno)from p查询结果:(4)查询所有零件的平均重量。
select AVG(weight)from p查询结果:(5)查询供应商S3供应的零件号。
select p.pnofrom s,P,spjwhere s.Sno=SPJ.Sno and P.Pno=SPJ.Pno and s.Sno='s3' 查询结果为:(6)查询各个供应商号及其供应了多少类零件。
select s.sno,COUNT(distinct p.pno)from s,P,spjwhere s.Sno=SPJ.Sno and P.Pno=SPJ.Pnogroup by s.sno(7)查询供应了2类以上零件的供应商号。
select s.sno,COUNT(distinct p.pno)from s,P,spjwhere s.Sno=SPJ.Sno and P.Pno=SPJ.Pnogroup by s.snohaving COUNT(distinct p.pno)>2查询结果为:(8)查询零件名以“螺”字开头的零件信息。
实验三数据查询(参考答案)

实验三数据查询(参考答案)实验目的□学会利用T_SQL语句中SELECT进行数据查询。
□掌握利用T_SQL 语句进行数据查询的基本方法。
实验内容有以下数据表表名:tudent属性列t_idt_nmt_e某t_birtht_coret_datet_fromt_dpidt_mnt使用T-SQL语句进行数据查询(注:学生班级为学号的前6位)1.显示所有学生的学号、姓名、性别、入学年份和班级(学号前6位)。
Selectt_id学号,t_nm姓名,t_e某性别,year(t_date)入学年份,left(t_id,6)班级Fromtudent2.显示前25%条学生记录信息。
Selecttop25percent某fromtudent3.查询tudent表中2022年及以后入学的学生信息。
Select某fromtudentwhereyear(t_date)>=20224.查询选修了1002号课程且成绩在60以下的学生学号。
Selecttudent.t_idfromtudentjoinlt_coueontudent.t_id=lt_coue. t_idWherec_id='1002'andcore<605.查询所有由三个字组成的“王”姓学生信息。
Select某fromtudentwheret_nmlike'王__'6.查询选修了1001号课程且成绩在60到80之间的学生选课信息。
Select某fromlt_couewherec_id='1001'andcorebetween60and807.查询所有张,王,李,赵姓的学生的学号、姓名、性别。
Selectt_id,t_nm,t_e某fromtudentwheret_nmlike'[张王李赵]%'8.查询陕西籍学生,将结果保存在新表t_han某i。
Select某intot_han某ifromtudentwheret_fromlike'%陕西%'9.查询选修了“数据结构”课程的学生学号、姓名及课程成绩。
数据库原理实验报告(数据查询)

数据库原理实验报告实验三数据查询班级:×××姓名:×××学号:×××数据查询一、[实验目的]1.掌握SQL的单表查询操作2.掌握SQL的连接查询操作3.掌握SQL的嵌套查询操作4.掌握SQL的集合查询操作二、[实验内容]本实验的主要内容是:1.简单查询操作。
包括投影、选择条件表达,数据排序,使用临时表等。
2.连接查询操作。
包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。
3.在SQL Server查询分析器中,使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。
4.组合查询与统计查询。
(1)分组查询实验。
该实验包括分组条件表达、选择组条件的表达方法。
(2)使用函数查询的实验。
该实验包括统计函数和分组统计函数的使用方法。
(3)组合查询实验。
(4)计算和分组计算查询的实验。
三、[实验方法]1.将查询需求用Transact-SQL语言表示。
2.在SQL Server查询分析器的输入区中输入Transact-SQL查询语句。
3.设置查询分析器结果区为Standard Execute(标准执行)或Execute to Grid方式。
4.发布执行命令,查看查询结果;如果结果不正确,进行修改,直到正确为止。
5查询分析器的主要作用是编辑Transact-SQL,将其发送到服务器,并将执行结果及分析显示出来(或进行存储)。
查询分析功能主要是通过测试查询成本,判断该查询是否需要增加索引以提高查询速度,并可以实现自动建立索引的功能。
图5- 错误!未定义书签。
SQL Server 2000查询分析器查询分析器的界面如图5- 错误!未定义书签。
所示。
在查询生成器中的左边窗口是对象浏览器,其中按树结构列出了数据库对象;右上方是SQL代码区域,用于输入SQL的查询语句;右下方为结果区,用于显示查询结果和分析结果。
实验三 数据库中的数据查询及视图操作实验报告

实验三数据库中的数据查询及视图操作实验报告实验三数据库中的数据查询及视图操作实验报告一、实验目的本实验的主要目的是熟悉数据库中的数据查询和视图操作。
通过本实验,我们可以掌握使用SQL语句进行数据查询和创建视图的方法,进一步提高对数据库的操作能力。
二、实验环境本实验使用MySQL数据库管理系统,并在Windows操作系统下进行实验。
三、实验内容本实验主要包括以下内容:1. 数据查询:使用SELECT语句查询数据库中的数据,并进行排序、过滤和聚合操作。
2. 视图操作:创建和删除视图,以及对视图进行查询和更新操作。
四、实验步骤与结果1. 数据查询首先,我们需要连接到数据库,并选择要查询的表。
假设我们选择的表名为"students",包含以下字段:学号、姓名、性别、年龄、班级。
a. 查询所有学生的信息:```sqlSELECT * FROM students;```执行以上SQL语句后,我们可以得到所有学生的信息,包括学号、姓名、性别、年龄和班级。
b. 查询男生的信息:```sqlSELECT * FROM students WHERE 性别 = '男';```执行以上SQL语句后,我们可以得到所有性别为男的学生的信息。
c. 查询年龄小于20岁的学生的姓名和班级:```sqlSELECT 姓名, 班级 FROM students WHERE 年龄 < 20;```执行以上SQL语句后,我们可以得到年龄小于20岁的学生的姓名和班级。
d. 查询学生按照年龄降序排列的结果:```sqlSELECT * FROM students ORDER BY 年龄 DESC;```执行以上SQL语句后,我们可以得到按照年龄降序排列的学生信息。
e. 查询学生按照班级分组,并统计每个班级的人数:```sqlSELECT 班级, COUNT(*) AS 人数 FROM students GROUP BY 班级;```执行以上SQL语句后,我们可以得到每个班级的人数统计结果。
实验三 数据查询

实验三数据查询【实验目的】1.学会使用企业管理器查询数据2.掌握使用SQL语句查询数据【实验内容】1.使用企业管理器进行数据查询2.在查询分析器内使用SQL语句进行数据查询【实验准备】1.复习与本次实验内容相关知识2.复习查询分析器的使用3.对本次实验中要求自己完成的部分做好准备(第二部分,请预先写出来) 【实验步骤】1.用企业管理器进行数据查询o启动企业管理器,注册连接。
o展开服务器-->展开数据库-->展开自己的数据库-->单击表。
o在需要查询的表上单击右键,在弹出的快捷菜单中选择"打开表(O)",其下级菜单即为查询命令:▪返回所有行(A) --该命令以网格方式显示指定表的所有记录▪返回首行(T)... --该命令以交互方式输入要返回的行数▪查询(Q) --打开查询窗口,以图形方式设计查询oo请从学生表(U_STUDENTS)上右击,使用"查询(Q)"命令建立一个查询,请选中学号(ID)、姓名(NAME)两个字段,再单击上面的执行按钮(!按钮)执行查询,查看结果。
oo再在关系图窗格内右击鼠标在弹出菜单中选择添加表,添加班级表(U_CLASSES),在班级表的ID字段上按下鼠标左键,拖至学生表的CLASS_ID上建立关联,在班级表上选中班级(CLASS)、系(DEPARTMENT)字段,再在网格窗格上选择姓名(NAME)行上选择排序类型为"升序"。
执行该查询,查看结果。
结果如下图所示。
(注意查看SQL窗格内的SQL查询语句)oo该操作实现了从班级表、学生表中查询出所有学生的学号(ID)、姓名(NAME)、班级(CLASS_ID)、所在系(DEPARTMENT)的记录数据。
o关闭企业管理器2.用SQL语句查询数据o启动查询分析器o在查询分析器中分别执行下列查询语句(有的语句请自己写出),体会或说明各语句的功能(请将下面的语句复制到查询分析器,逐条执行--要执行一条语句请选中该语句再按F5或单击执行铵钮,如下图所示)。
实验3 数据查询

实验3 数据查询数据查询是数据库的核心操作。
在本实验中,我们学习如何使用SELELCT 查询语句实现单表查询、连接查询、嵌套查询、集合查询及相关操作。
实验3.1 单表查询【实验目的】●熟悉SELECT查询语句各个子句的功能。
●掌握使用SELECT查询语句实现单表查询。
【实验内容】●使用SELECT查询语句对学生管理数据库SCT中三张表(Student、Course、SC)进行单表查询。
●对照教材“3.4.1单表查询”中的例题进行练习。
●Into子句的使用。
【实验步骤】(1)编写SQL语句:SSMS→单击工具栏上的“新建查询”按钮→录入SQL语句。
(2)测试SQL语句:单击工具栏上的“分析”按钮或按<Crtl+F5>组合键对当前SQL语句进行测试,如果语句无误,代码区下方会显示“命令已成功完成”,否则显示错误提示信息。
(3)执行SQL语句:单击工具栏上的“执行”按钮或直接按<F5>键即可执行当前SQL语句,并看到执行结果。
(4)对照教材“3.4.1单表查询”中的例题进行练习,从而熟悉SELECT语句各子句的功能。
示例3.1:查询计算机科学系年龄在20岁以下的学生姓名,见图3.1。
示例3.2:查询平均成绩大于等于90分的学生学号和平均成绩,见图3.2。
图3.1 示例3.1执行结果图3.2 示例3.2执行结果(5)Into子句的使用:在SELECT查询语句中使用into子句,可以把查询结果存放到一个新建立的表中。
示例3.3:利用学生表的数据生成一张女生表gilestudent,见图3.3,之后可在“对象资源管理器”窗格中查看新建的gilestudent表。
图3.3 示例3.3执行结果实验3.2 连接查询连接查询可以使用两种语法形式,一种是在from子句中写出所要连接的表名,而连接条件写在where子句中,从而实现表的连接;另一种是ANSI连接形式,即在from子句中使用join…on关键字,连接条件写在on之后,从而实现表的连接。
数据库原理及应用.实验3.数据查询与更新

数据库原理及应⽤.实验3.数据查询与更新实验报告课程名称:数据库原理及应⽤实验项⽬名称:数据查询与更新实验时间:2021年4⽉12⽇实验⽬的: (1) 观察查询结果, 体会SELECT语句实际应⽤; (2) 要求能够在查询分析器中使⽤SELECT语句进⾏简单查询。
(3) 熟练掌握简单表的数据查询、数据排序和数据连接查询的操作⽅法。
(4) 熟悉使⽤UPDATE/INSERT/DELETE/ALTER语句进⾏表操作;实验环境: MySQL 5.7.33、SQLyog-11.2.4实验内容及过程:在实验2的基础上,完成以下题⽬1. 在查询分析器中⽤SQL语句完成以下题⽬单表查询找出所有供应商的姓名和所在城市。
复制SELECT SNAME,CITY FROM S找出所有零件的名称、颜⾊、重量。
复制SELECT PNAME,COLOR,WEIGHT FROM P找出使⽤供应商S1所供应零件的⼯程号码。
复制SELECT JNO FROM SPJ WHERE SNO='S1'列出所有地址在北京的供应商姓名。
复制SELECT SNAME FROM S WHERE CITY='北京'模糊查询,找出名字包含"螺丝"两个字且颜⾊为红⾊的零件名称。
复制SELECT PNAME FROM PWHERE PNAME LIKE '螺丝_' AND COLOR='红'统计不同城市⼯程项⽬的数量,结果显⽰"城市"、"⼯程项⽬数合计"。
复制SELECT CITY,COUNT(JNO) AS '⼯程项⽬书合计'FROM J GROUP BY CITY连接查询和嵌套查询找出⼯程项⽬J2使⽤的各种零件的名称及其数量。
复制SELECT PNAME,QTYFROM P,SPJWHERE P.PNO=SPJ.PNO AND JNO='J2'找出上海⼚商供应的所有零件号码(要求⽤⾃然连接和嵌套查询两种⽅法)。
实验3数据库 数据查询

实验三数据查询一、实验目的关系数据库的查询语句是SQL语言中最灵活的部分,必须仔细体会,多多上机练习,才能真正体会和理解其中的奥妙和细微差别。
本实验的目的就是让同学们通过练习掌握常用的查询语句和查询技巧。
请同学们反复练习,即使做对了也要抽时间再一次细细体会。
二、实验预习1、SQL中查询语句格式:select[all|distinct]<目标列表达式>[```]fromwheregroup by<列名>[having<条件表达式>]order by<列名>[asc|desc]2、连接查询有哪些不同的连接方式?有什么特点。
等值于非等值连接查询:连接运算符为=号时为等值连接,使用其他运算符称为非等值连接自身连接:连接操作不仅可以在两个表之间进行,也可以在一个表与其自己进行连接外连接:把舍弃的元组也保存在结果关系中,其他属性上填空值复合条件连接:where中使用多个连接谓词三、实验内容和要求在实验二建立的数据库和数据表(Student、SC、Course)的基础上,用SQL语句完成下列查询,并在SQL SERVER中得以验证:1、查询全体学生的基本信息。
(请写出两种方法)select *from student;或select Sno,Sname,Saex,Sage,Sdeptfrom student;2、现需要一个“计算机系”的点名册,点名册上只要学号、姓名、性别三个方面的信息(记得给出别名,好让查询出来的结果容易识别哦)。
Select Sno 学号,Sname 姓名,Ssex 性别From student;3、查询“信息系”学生的学号、姓名和出生年份(起个别名,不然查询出来的结果会很难看,不信你试试看,是不是结果表一点规律都没有?)。
select sno 学号,sname 姓名,2013-Sage 出生年份from studentwhere sdept=’计算机’;4、查询1号课程不及格的学生学号。
数据库查询语句例题与答案实验三

实验三数据查询语言一、基本查询使用相应SQL语句,完成如下操作:(1)查询所有用户的用户ID和姓名。
select uid,namefrom [user](2)查询注年龄最小3位用户的用户ID,姓名和年龄。
select top 3(uid),name,datediff(yyyy,birthday,getdate()) agefrom [user]order by birthday desc(3)查询库存小于50本的所有书目信息。
select*from bookwhere stock<50(4)查询清华大学出版社的所有书目信息。
select*from bookwhere press='清华大学出版社'(5)查询价格在50-100元的所有的书名。
select titlefrom bookwhere price>50 and price<100(6)查询姓“张”或“王”或“李”且单名的学生的情况。
select*from [user]where name like'张%'or name like'李%'or name like'王%'and len(name)=2(7)查询所有书目的书名、出版社及价格,要求出版社升序排列,出版社相同时,按价格从高到底进行排序。
select title,press,pricefrom bookorder by press,price desc(8)查询所有有交易记录的用户ID。
select oidfrom [order]where state= 4二、数据汇总使用相应SQL语句,完成如下操作:(1)查询理工类书目的最高价格、最低价格及平均价格。
select max(price)max_price,min(price)min_price,avg(price)avg_price from bookwhere category = 1(2)查询所有理工类书目的库存总量。
数据库实验3-SQL语言之数据查询(简单查询)

实验三SQL数据查询(简单查询)姓名:学号:专业:网络工程班级:20网络工程同组人:无实验日期:【实验目的与要求】1、熟练掌握SELECT 语句的基本语法格式;2、熟练掌握使用SQL语句进行单表查询,掌握GROUP BY子句、HA VING 子句和集函数;3、熟练掌握使用SQL标准语句和T-SQL扩展语句进行连接查询。
【实验内容】3.0. 实验准备与说明本实验将用到实验二中数据库SalesDB和相应的表及数据,若该数据库及表尚未创建,或数据尚未录入,则请先完成之。
请根据前面实验创建的表结构和数据,完成如下查询。
本实验及后面实验中所用测试数据库中表的字段及含义如下表:表-1 测试数据库表的字段及含义3.1.简单查询(1).查询各种产品的产品编号、产品名称和价格。
请给出相应语句:USE SalesDB;SELECT Pno,Pname,Price FROM Product;请给出运行结果:(2).查询所在城市为“厦门”的客户编号和客户名称,结果中各列的标题分别指定为:“客户编号”和“客户名称”显示。
请给出相应语句:SELECT Cno as客户编号,Cname as客户名称FROM Customer WHERE City='厦门';请给出运行结果:(3).查询各产品编号、名称、库存量和产品总值。
(总值:价格与库存数量的积)请给出相应语句:SELECT Pno,Pname,Price ,Stocks FROM Product;SELECT SUM(Price*Stocks)as产品总值FROM Product;请给出运行结果:(4).查询曾购买过产品的客户编号(不重复)。
请给出相应语句:SELECT Cno FROM Customer;请给出运行结果:(5).查询价格在1000-2000的产品信息,并依价格由低到高的顺序排序。
(请使用Between…and和算术比较运算符分别实现)a.使用Between…and比较实现:请给出相应语句:use SalesDB;select*from Productwhere Price between 1000 and 2000order by Price;请给出运行结果:b.使用算术比较实现:请给出相应语句:use SalesDB;select*from Productwhere Price >= 1000 and Price<=2000order by Price;请给出运行结果:(6).查询产品名称含有“热水器”的产品信息。
实验三数据库的基本查询

嘉应学院计算机学院一、实验目的:通过该实验掌握应用SQL 查询数据库的基本方法,包括单表、多表查询。
二、实验原理数据库查询是数据库的核心操作。
SQL语言提供了SELECT语句进行数据库的查询。
SELECT[ALL|DISTINCT]<目标列表达式〉[,<目标列表达式〉]...FROM<表名或视图名〉[,<表名或视图名〉]...[WHERE<条件表达式>][GROUP BY<列名1〉[HA VING<条件表达式>]][ORDERBY<列名2〉[ASC|DESC]]三、实验内容和方法实验用的数据库:用实验三建立的数据库:School1. 投影查询(1) 查询SC表的sno的不重复记录。
(2) 改变查询结果的标题名:sno为学号,sname为姓名,ssex 为性别,sdept 为系名。
(3) 查询STUDENT表的前3条记录(top 3)。
3. 选择查询(1) 查询成绩在60-80之间的姓名、系名和成绩。
(2) 查询信息系和计算机系的姓名和成绩。
(3) 查询计算机系或女同学的记录。
(4) 查询李姓同学的记录。
(5) 查询计算机系女同学的记录。
4. 排序查询(1)查询STUDENT表的所有字段和记录按年龄由大到小排序。
(2)查询STUDENT表的所有字段和记录按年龄由小到大排序。
5. 结合统计函数(1) 查询SC表的最高分。
(2) 统计SC表95001学生的平均分。
(3)统计SC表各课程的最低分。
(4)查询超过平均分的学生姓名和系名。
(5)查询低于平均分的学生姓名、系名和课程名。
6.其他(1)查询其他系中比计算机系某一学生小的学生姓名和年龄。
(2)查询其他系中比计算机系所有学生年龄都小的学生姓名和年龄。
(3)查询每一门课的间接先修课(先修课的先修课)。
四、实验结论1、在聚集函数遇到空值时,除COUNT(*)外,都跳过空值而只处理非空值。
此外注意WHERE子句中是不能用聚集函数作为条件表达式的。
实验3《数据查询与操作》实验

《数据查询与操作》实验三、实验内容1.在“人事管理系统”中,新增一个员工信息(员工编号…100508‟、员工姓名…小龙女‟、所在部门编号…10001‟、籍贯…河南‟)。
2.将“人事管理系统”数据库的“员工信息”表中籍贯为“河南”并且所在部门编号为”10001”数据插入到“新员工信息”表中。
3.在“人事管理系统”数据库“部门信息”表中,将部门的员工人数设置为10。
4.在“人事管理系统”数据库“员工信息”表中,将文化程度为“大专”,并且在“2005-05-01”到“2007-05-01”之间入职的所有员工调动到编号为“10006”的部门去。
5.在“人事管理系统”数据库中对部门进行了重组和调整,原来编号为10006的部门名称变为“市场开发部”,人数也调整为20人。
6.在“人事管理系统”数据库中,编号为“100503”的新员工升级为正式员工,需要在“新员工信息”表中删除他的记录。
7.在“人事管理系统”数据库中,删除“新员工信息”表中所有在编号为“10005”部门工作的员工记录。
8.在“人事管理系统”数据库中,需要删除20%的员工信息。
9.在“教务管理系统”数据库“班级信息”表中,查询分配了班主任的班级信息。
10.在“教务管理系统”数据库“学生信息”表中,根据籍贯查询各省学生人数,并显示省份和人数信息。
11.在“教务管理系统”数据库中,根据相关表的内容,查询平均成绩大于70的课程信息。
12.在commidtysell数据库中,根据相关表的内容,查询销售同类产品的商场编号(去除相同的行)。
13.在commidtysell数据库中,根据相关表的内容,查询买出产品数量最多的商场编号和销售总量信息。
14.在TeachingManageSYS数据库中,根据相关表的内容,统计年龄大于平均年龄的教师的Tname、Tsex、Tage、Trank,所教授课程的Cname,Credit,CouresHour。
15.在“人事管理系统”数据库“员工信息”表中,查询工龄大于4年的员工信息16.将学生“陈霞”所在班级的其他学生并且成绩不合格的学生成绩删除。
实验三《数据查询与操作》实验资料

530213
、掌握多表查询:嵌套查询的使用。
、掌握INSERT、UPDATE和DELETE语句的一般格式与使用方法。
、掌握视图的创建和删除、视图的NSERT、UPDATE和DELETE的应用
、操作系统:Windows XP或Windows 2003
、数据库管理系统:SQL Server 2005
xs1.班级编号= xs2.班级编号
xs1.学号=xk.学号
xs2.姓名='胡少华'
xk.成绩>=60
from 学生信息
学号in
学生信息.学号
学生信息,选课表
学生信息.学号=选课表.学号and 成绩>60 and 班级编号in(select 班级编号
学生信息
530213
into vi_xdx(学号,姓名,性别,政治面貌)
('20030000045','李流','男','党员')
、通过计算机专业学生的视图,实现计算机专业学号为200230000347的学生郑
01。淘宝店530213
vi_jsjstu
班级编号=
select 班级编号
班级信息
k.课程编号= x.课程编号
by 课程名称
、建立计算机专业学生的视图淘宝店530213
view vi_jsjstu
学生信息.*
学生信息,班级信息
学生信息.班级编号=班级信息.班级编号and 班级名称like'计算机%'
、查询需要重考的学生姓名及相应重考课程名称。
view vi_kstudent
实验三 数据查询(1)

实验三“教学管理系统”数据查询(1)一、实验内容1、在“教学管理系统”中,所有学生的基本信息都保存在学生信息表TB_Student中,请用SQL查询语句实现以下的查询要求:①查看学生表中所有学生的所有字段的信息;②查看学生表中所有学生的部分字段【StuID,StuName,Sex, ClassID】信息;③按班级查看某个班学生的部分字段【StuID,StuName,Sex, ClassID】信息;④按班级查看某个班学生的部分字段【StuID,StuName,Sex, ClassID】信息,而且先按字段【Sex】降序,再按字段【StuName】进行降序排列。
参考知识及代码:●简单SELECT查询另,两个关键字的学习:2、用计算列显示学生和学生选课信息①用“列别名”显示的【学生姓名】和【性别】字段的数据合成为一个【学生姓名(性别)】字段显示,如下图;②查看“学生信息表”中自己班(如“04网络(1)班”)学生的部分字段【StuID, StuName, Sex】信息,同时显示一个计算列【年龄】;③查看“课程班信息表”中的部分字段【CourseClassID, ClassID, TeacherID, MaxNumber, SelectedNumber】信息参考知识及代码:●试验参考代码:①用“列别名”显示的【学生姓名】和【性别】字段的数据合成为一个【学生姓②查看“学生信息表”中自己班(如“04网络(1)班”)学生的部分字段【StuID, StuName, Sex】信息,同时显示一个计算列【年龄】;③查看“课程班信息表”中的部分字段【CourseClassID, ClassID, TeacherID,3、SUBSTRING函数和LEN函数1)、请写出查询语句,显示“课程班信息表”中上课教师的系部信息和【TeachingTime】字段的字符长度信息,如下图所示:2)、请写出查询语句,显示“课程班信息表”中上课教师的系部信息和【TeachingTime】字段的字符长度信息,如下图所示:4、运用运算符查询学生相关信息①查询自己班级(如04网络(2)班)性别为“男”(或为“女”)的所有学生信息,只显示“学号、姓名、性别和出生年份”字段;②查询自己班级(如04网络(2)班)在某个出生年份段(如19-21岁)的所有学生信息,只显示“学号、姓名、性别和年龄”字段;③要查询一个学生的所有信息。
实验三查询数据库原理实验

实验报告日期2013 年11月12日1. 实验目的1) 熟悉SQL Server 查询分析器环境。
2) 掌握基本的SELEC 查询及其相关子句的使用。
3) 掌握复杂的SELEC 查询,如多表查询、子查询、连接和联合查询。
2. 实验内容1) 启动SQL Server 查询分析器环境。
2) 简单查询操作。
该实验包括投影、选择条件表达,数据排序,使用临时表等。
具体完成以下题目,将它们转换为 SQL 语句表示,在XSCJ 数据库中实现 其数据查询操作。
a ) 查询计算机系学生的学号和姓名b ) 查询选修了课程的学生学号c ) 查询选修课程号为‘101’的学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同按学号的升序排列。
d ) 查询选修课程号为‘101 '且成绩在80~90之间的学生学号和成绩,并成绩乘以输出。
e ) 查询水利系或计算机系姓陈的学生的信息。
f ) 查询缺少了成绩的学生的学号和课程号g ) 在KC 表中查询学分低于3的课程信息,并按课程号升序排列。
h ) 查询全体学生的姓名,出生年份,和所在系i ) 查询 计算机,经济系的所有学生的姓名和性别j ) 查询没有先行课的课程的课程号和课程名3) 连接查询操作。
该实验包括等值连接、自然连接、求笛卡儿积、一般连接、 外连接、内连接、左连接、右连接和自连接等。
a ) 查询107号课程不及格的学生信息(学号,姓名,联系电话)。
b ) 查询学生的学号、姓名、选修的课程号及成绩c ) 查询选修课程号为‘101 '且成绩在90以上的学生学号、姓名和成绩d ) 查询每一门课程的间接先修课(即先修课的先修课)SELEC ■课程名 FROM xs_kc A JOIN xs_kc B Where A.先修课程=B.课程名and 先修课程is notnulle ) 用连接查询在XSQK 表中查询住在同一寝室的学生,即其联系电话相同SELECT A 学号,A.姓名,A.联系电话 FROM XSQK A JOIN XSQK B ON A.联系电话=B.联系电话 WHERE A.学号!=B.学号4) 嵌套查询a )查询与’杨颖’在同一个系学习的学生的信息select * from XSQK where 所在系 in (select 所在系 from XSQK where课程 数据库原理与应用实验名称查询数据库 院系— 计算机―专业班级_姓名__学 号 0202实验日期2013 年11 月5 日 10 月29日 11 月12日姓名=' 杨颖')比较: select * from XSQK where 所在系= (select 所在系from XSQK where 姓名=' 杨颖') 的异同b) 查询选修了课程名为' 计算机原理' 的学生的学号和姓名select 学号, 姓名from xsqk where 学号in(select 学号from sc where 课程号in (select 课程号from kc where 课程名=' 计算机原理'))比较:select 学号,姓名from xsqk where 学号in (select 学号from xs_kc, kc where xs_kc. 课程号=kc. 课程号and 课程名=' 计算机原理')c) 查询选修了课程' 101 '和课程' 102 '的学生的学号d) 查询所有选修了101 号课程的学生姓名e) 查询没有选修了1 号课程的学生姓名f) 查询选修了全部课程的学生姓名h) 查询没有人选修的课程号和课程名i) 查询每个学生的课程成绩最高的成绩信息(sno,cno,grade)5) 数据库的集合查询和统计查询a) 在XS_KC表中按学号分组汇总学生的平均分,并按平均分的降序排列。
实验三数据查询(三)

实验三(3)数据查询一.实验目的1.通过使用SQL查询分析器(Server Query Analyzer),熟练基本SELECT查询,掌握脚本的修改和执行。
2.通过使用SQL查询分析器(Server Query Analyzer),掌握使用SELECT语句的主要子句,实现数据表的复杂检索。
二.实验要求1. 熟练使用SQL语句实现单表查询。
2. 熟练使用SQL语句实现连接查询。
3. 熟练使用SQL语句实现嵌套查询。
三. 实验准备1. 掌握SQL语句的用法。
2. 已完成实验一、二,成功创建了数据库student和其中包含的表。
四.实验内容(二)SQL复合查询操作:启动“查询分析器”,用Transcat-SQL语句完成指定的操作,或分析并执行Transcat-SQL 语句,观察输出结果。
练习1:查询课程数。
写出查询语句:Select count (*) From course练习2:查询不同学分的个数(学分分为几种)。
写出查询语句:Select Distinct count (credit) From course练习3:查询信息系学生的平均年龄。
写出查询语句:Select AVG(sage) From student Where sdapt=’信息系’练习4:查询计算机系学生选修课程的最高成绩。
写出查询语句:Select MAX(grade) From student,sc Where sc.sno=student.sno and sdept=’计算机系’练习5:查询各个学分及相应的课程数。
写出查询语句:Select COUNT(cno),credit From course group by credit练习6:查询有2门以上课程成绩>=90的学生学号及成绩>=90的课程数。
写出查询语句:Select sno,COUNT(sno) Where sno in(Select sno From sc Where grade>=90 ) group by sno having COUNT(sno)>=2练习7:“数据库原理”课程成绩高于李勇的学生学号和姓名Select sno,sname From sc,course,student Where student.sno=sc.sno and o=course=cno and grade>(Select grade From sc,course,student Where student.sno=sc.sno and o=course=cno and sname=’李勇’ and cname=’数据库原理’)练习8:查询所有与李勇选修相同课程的学生的学号和姓名Select student .sno,sname From sc,student Where sc.sno=student.sno and sname=’李勇’练习9:查询年龄介于李勇的年龄与25岁之间的同学的学号、姓名、年龄Select sno,sname,sage From student Where sage<=25 AND sage>=(Select sage From student Where sname=’李勇’ )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三数据查询
一、实验目的
1、掌握从简单到复杂的各种数据查询。
包括单表查询、多表连接
查询、嵌套查询、集合查询;
2、掌握用条件表达式表示检索条件;
3、掌握用聚集函数计算统计检索结果。
二、实验内容
根据以下5个数据表,完成1-26题的查询。
000006 002003
000006 002001
000006 002002
000006 001003
000006 002004
000006 003001
000006 003002
000006 003003
0000011 001002
0000011 002003
0000011 002001
0000011 002002
0000011 001003
0000011 002004
0000011 003001
0000011 003002
0000011 003003
1、查询所有学生的基本信息,包括学号,系别,姓名,性别,年
龄。
2、查询所有男同学,要求显示学号,姓名,出生日期。
3、查询所有年龄在19岁以下(包括19岁)的女同学,要求显示
学号,姓名,性别,年龄。
4、查询虽然选修了课程,但未参加考试的所有学生,要求显示出
这些学生的学号和姓名。
5、查询所有考试不及格的学
6、查询出课程号为001001,002001,002003的所有课程,要求显
示出课程号,课程名。
7、查询所有在1970年出生的教师,要求显示出教师号,教师姓名,
出生日期。
8、查询出各个课程及相应的选课人数。
9、查询出教授2门以上课程的教师号。
10、查询出选修了001001课程的学生平均分、最低分及最高分。
11、查询1960年以后出生的,职称为讲师的教师姓名,出生日期,
并按出生日期升序排列。
12、查询所有学生的选课及成绩情况,要求显示学号,姓名,课程
号和成绩。
13、查询“计算机”系的学生的选课及成绩情况,要求显示学号,
姓名,课程号,课程名和成绩。
14、查询所有学生的学分情况,要求显示学号,姓名,总学分。
15、查询所有学生的平均成绩及选课门数,要求显示学号,姓名,
平均成绩,选课门数。
Select S.Sno,S.Sname,avg(Score),count(Cno)
From S,SC
Where S.Sno=SC.Sno
Group by S.Sno,S.Sname
16、查询所有选修了课程但未参加考试的所有同学及相应的课程,
要求显示学号,姓名,课程号,课程名。
Select S.Sno,Sname,o,Cname
From S,C,SC
Where S.Sno=SC.Sno and o=o and score is null
17、查询所有选修了课程但考试不及格的所有学生及相应的课程,
要求显示学号,姓名,课程号,课程名,成绩。
Select S.Sno,Sname,o,Cname
From S,C,SC
Where S.Sno=SC.Sno and o=o and score<60;
18、查询选修了课程名为“程序设计语言”的所有同学及成绩情况,
要求显示学生的姓名,成绩。
19、查询“计算机”系的所有同学及成绩情况,要求显示学号,姓
名,班级号,课程号,课程名,课程成绩。
20、查询所有教师的任课情况,要求显示教师名,担任课程名。
21、查询所有教师的任课门数,要求显示教师名,担任课程的门数。
22、查询和“张建国”是同一系别的同学的姓名。
23、查询没有选修“计算机基础”课程的学生姓名。
24、查询主讲“数据库”和主讲“数据结构”的教师姓名。
25、查询讲授了所有课程的教师姓名。
Select Tname
From T
Where not exists
(select *
From C
Where not exists
(Select *
FROM TC
Where Tno=T.TNO AND Cno=o));
26、查询至少选修了学号为000002学生选修的课程的学生学号和
姓名。
Select distinct Sno,Sname
From SC SCX
Where not exists
(select *
From SC SCY
Where SCY.Sno=’2’
Not exists
(select *
From SC SCZ
Where SCZ.Sno=SCX.Sno AND
o=o));
三、实验步骤
四、实验总结。