第一句子大全,网罗天下好句子,好文章尽在本站!

「SQL」基础实验——select语句

时间:2023-01-18

一、实验目的1、掌握使用SELECT语句实现对数据库的简单查询2、掌握使用SELECT语句实现对数据库的多表链接查询和子查询实验内容、方法、步骤、结果与分析

友情提示:本文共有 4745 个字,阅读大概需要 10 分钟。

一、实验目的

1、掌握使用SELECT语句实现对数据库的简单查询

2、掌握使用SELECT语句实现对数据库的多表链接查询和子查询

实验内容、方法、步骤、结果与分析(三)表的查询:

实验内容:

以下各题基于数据库HrSystem,编写SELECT语句,完成以下各题的查询要求,保存或记录下实现各题功能的查询语句。

查询员工表Employees的全部信息。方法:

Use HrSystem

GO

SELECT * FROM Employees

GO

步骤及结果:

分析:查询表的内容使用SELECT关键字,*表示全部信息。

实验内容:

2.查询员工表Employees的姓名、性别及工资。

方法:

Use HrSystem

GO

SELECT Emp_name AS 姓名,Sex AS 性别,Wage AS NewWage FROM Employees

GO

步骤及结果:

分析:不用查询全部信息时,可以在SELECT语句后面指定带查询列。

实验内容:

3.要将所有员工工资上涨20%,显示所有员工的姓名、性别和上涨后的工资。将上涨后的工资一列的标题显示为“NewWage”。

方法:

Use HrSystem

GO

UPDATE Employees SET Wage=Wage*1.20

/*将所有员工工资上涨%*/

GO

SELECT Emp_name AS 姓名,Sex AS 性别,Wage AS NewWage FROM Employees

GO步骤及结果:

分析:查询表的内容可以指定查询,且可以更改显示列名(使用AS关键字)。

实验内容:

4.查询员工表Employees中有哪些职务(使用title字段,这里需要去掉重复的职务。

方法:

Use HrSystem

GO

SELECT DISTINCT Title FROM Employees

GO

步骤及结果:

分析:查询显示时DISTINCT关键字表示滤除重复项。

实验内容:

5.查询部门编号为1的员工姓名和职务。

方法:

Use HrSystem

GO

SELECT Emp_name AS 姓名,Title AS 职务 FROM Employees WHERE Dep_id=1

GO

步骤及结果:

分析:查询语句后可用WHERE关键字外加查询条件。

实验内容:

6.查询图书类型职务为“部门经理”且性别为女的员工的姓名。

方法:

Use HrSystem

GO

SELECT Emp_name AS 姓名 FROM Employees WHERE Title="部门经理" AND Sex="女"

GO

步骤及结果:

分析:设置查询条件可以使用逻辑运算符设置查询条件。

实验内容:

7.使用BETWEEN表示范围,找出工资在3000~4000元的所有员工信息。

方法:

Use HrSystem

GO

SELECT * FROM Employees WHERE Wage BETWEEN 3000 AND 4000

GO

步骤及结果:

分析:BETWEEN为设置查询范围关键字。

实验内容:

8.使用BETWEEN表示范围,找出工资不在3000~4000元的所有员工信息。

方法:

Use HrSystem

GO

SELECT * FROM Employees WHERE Wage NOT BETWEEN 3000 AND 4000

GO

步骤及结果:

分析:可以在BETWEEN语句前添加否定,语义为不在该范围内的。

实验内容:

9.找出部门为人事部(编号为1)和办公室(编号为2)的所有员工信息(条件使用IN)。

方法一:

Use HrSystem

GO

SELECT * FROM Departments WHERE Dep_id IN (1) AND Dep_name IN ("人事部")

SELECT * FROM Departments WHERE Dep_id IN (2) AND Dep_name IN ("办公室")

GO

方法二:

Use HrSystem

GO

SELECT * FROM Departments WHERE (Dep_id IN (1) AND Dep_name IN ("人事部"))OR(Dep_id IN (2) AND Dep_name IN ("办公室"))

GO

步骤及结果:

方法一:

方法二:

分析:IN关键字为查询值或范围设置,多重查询条件应用逻辑运算符处理。

实验内容:

10.从Employees表中找出所有身份证以’110’开头的员工的所有信息。

方法:

Use HrSystem

GO

SELECT * FROM Employees WHERE IdCard LIKE "110%"

GO

步骤及结果:

分析:LIKE为模糊查询关键字,查询部分包含该内容的项,%表示未知个数的多个字符,另外有_表示单个字符,[][^]分别为在和不在该范围的一个字符。

实验内容:

11.查询Employees表中所有身份证第1个字母在0~3之间的员工的所有信息。

方法:

Use HrSystem

GO

SELECT * FROM Employees WHERE IdCard LIKE "[0-3]%"

GO

步骤及结果:

分析:LIKE "[0-3]%"表示开头一个字符在0~3范围内,后面有任意多个字符。

实验内容:

12.统计员工的最高工资、最低工资、总工资和平均工资。

方法:

Use HrSystem

GO

SELECT MAX(Wage) AS 最高工资,MIN(Wage) AS 最低工资,SUM(Wage) AS 总工资,AVG(Wage) AS 平均工资 FROM Employees

GO

实验内容:

分析:聚合函数MAX()、MIN()、SUM()、AVG()分别表示取最大值、最小值、总数和平均值。

实验内容:

13.统计一共有几种职务。

方法:

Use HrSystem

GO

SELECT COUNT(DISTINCT Title) AS 职务种数 FROM Employees

GO

步骤及结果:

分析:COUNT为查询计数关键字,设置不同的参数有不同的计数结果,如是否重复计数相似项等。

实验内容:

14.统计职务为“部门经理”的员工总人数。

方法:

Use HrSystem

GO

SELECT COUNT(Title) AS 部门经理数 FROM Employees WHERE Title="部门经理"

GO

步骤及结果:

分析:计数查询时同样可以设置相应的条件。

实验内容:

15.统计每一个部门的员工人数,统计结果中包含部门编号和员工人数。(提示:使用group by实现分类汇总)

方法:

Use HrSystem

GO

SELECT Dep_id AS 部门编号,COUNT(*) AS 员工人数 FROM Employees

GROUP BY Dep_id

GO

步骤及结果:

分析:GROUPBY为分组显示查询的语句,BY后面为分组条件,语义为按什么分组(显示)。

实验内容:

16.统计每个部门(按Dep_id分类)的平均工资(Wage), 要求统计结果列标题显示为:“部门编号”及“平均工资”。(提示:使用groupby实现分类汇总)。

方法:

Use HrSystem

GO

SELECT Dep_id AS 部门编号,AVG(Wage) AS 平均工资 FROM Employees

GROUP BY Dep_id

GO

步骤及结果:

分析:AVG()为计算平均值的聚合函数。

实验内容:

17.统计每个部门(按Dep_Id分类)的平均工资(Wage),要求显示每个部门的明确内容后再显示该部门的平均工资,明细中要求显示部门编号、部门名称、姓名和工资。(提示:使用COMPUTE…BY…)

方法:

Use HrSystem

GO

SELECT t2.Dep_id AS 部门编号, t2.Dep_name AS 部门名称, t1.Emp_name AS 姓名, t1.Wage AS 工资

FROM Employees t1, Departments t2 WHERE t1.Dep_id= t2.Dep_id ORDER BY t2.Dep_id

COMPUTE AVG(Wage) BY t2.Dep_id

GO

步骤及结果:

分析:ORDER BY语义为按什么排序,上列就是按部门编号排序显示。

实验内容:

18.查询每个员工的明细信息。查询结果包括姓名、性别、职务和对应的部门名称。对于没有员工的部门,在查询结果中要同样列出,其对应的员工信息显示为空(NULL)。(提示:使用外连接,使用表Employees和表Departments)

方法:

Use HrSystem

GO

SELECT t1.Emp_name,t1.Sex,t1.Title,t2.Dep_name FROM Employees t1 RIGHT JOIN Departments t2

ON t1.Dep_id=t2.Dep_id

GO

步骤及结果:

分析:设使用连接查询的时候,需要对待查询的多张表设置标签。RIGHT JOIN(右边为主表)在左边表没有值时自动补为NULL值。

实验内容:

19.实现第18题功能,改成使用INNER JOIN实现表间链接。

方法:

Use HrSystem

GO

SELECT t1.Emp_name,t1.Sex,t1.Title,t2.Dep_name FROM Employees t1 INNER JOIN Departments t2

ON t1.Dep_id=t2.Dep_id

GO

步骤及结果:

分析:INNER JOIN为连接查询中外查询关键字之一,会自动滤除空值项。

实验内容:

20.查询每个部门所包含的员工信息。查询结果包括姓名、性别、职务和对应的部门名称。对于没有员工的部门,在查询结果中要同样列出,其对应的员工信息显示为空(NULL)。(提示:使用外连接,使用表Employees和表Departments)

方法:

Use HrSystem

GO

SELECT t2.Dep_name,t1.Emp_name,t1.Sex,t1.Title FROM Departments t2 lEFT JOIN Employees t1

ON t1.Dep_id=t2.Dep_id

GO

步骤及结果:

分析:外连接查询中使用lEFT JOIN关键字时,左边表为主表。

实验内容:

21.使用子查询实现:查询部门为‘办公室’的员工。

方法:

Use HrSystem

GO

SELECT *FROM Employees WHERE Dep_id IN

(SELECT Dep_id FROM Departments WHERE Dep_name

IN (SELECT Dep_name FROM Departments WHERE Dep_name="办公室"))

GO

步骤及结果:

分析:子查询为嵌套SELECT查询语句,根据其他表条件设置查询内容,可以多层嵌套。

三、实验小结【对自己而言,通过实验学到的关键技术方法】

数据库中表的查询可以设置相关条件筛选的显示所需要的信息,并按特定的要求显示;设置查询条件的关键字有:WHERE、BETWEEN、IN、LIKE,其中LIKE为模糊查询,“%、_、[]、[^]”分别表示多个字符、单个字符、在该范围和不在该范围;ORDER BY为排序查询结果的关键字,GROUP BY为分组查询内容的关键字;连接查询中包括:内连接、外连接(左向、右向和完整外部连接)和交叉连接;子查询就是使用嵌套查询语句,可以多层嵌套使用,相关关键词有:SELECT、IN、“等号”、EXISTS、HAVING等;查询结果可以单独保持到另一个新的表格中。智者乐水,仁者乐山,幸福之人关注“理工科日记”

获取原文文档请关注微信公众号“理工科日记”,回复数据库获取。

本文如果对你有帮助,请点赞收藏《「SQL」基础实验——select语句》,同时在此感谢原作者。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。
相关阅读
关于办公室工作的英语情景句子

关于办公室工作的英语情景句子

英语的办公室口语是我们生活中经常用到的,小编下面就给大家分享办公室英语的口语,要学习的快快学习起来吧Ending a sales talk 终止推销会谈A: Well, I’m glad I had a chance to see these samples, but I’m really not in a position to make a decision r...

2023-01-13 #经典句子

Q萌外观双模连接 语音打字开启极致办公高效率

Q萌外观双模连接 语音打字开启极致办公高效率

...线,防止腕部综合症的产生;以及今天要讲到的专为日常办公场景而生可以语音打字、OCR图文识别、划词翻译以及语音上网等众多实用又高效功能的鼠标。外观Q萌低调有料,人体工学设计更懂用户的心产品包装采用天地盖设计...

2023-05-28 #经典句子

省民语委办公室:积极开展语言文字资源采集工作

省民语委办公室:积极开展语言文字资源采集工作

本报讯 近期,省民语委办公室认真做好语言文字资源采集相关准备工作,先后派出工作人员前往大理、华坪、陇川、通海、龙陵、昌宁等地开展少数民族语言文字资源采集工作。目前,已采集到华坪彝语水田话、陇川阿昌语、...

2023-07-30 #经典句子

Word办公技巧:利用书签功能精准定位到文档中的指定位置

Word办公技巧:利用书签功能精准定位到文档中的指定位置

在使用Word文档的过程中,我们可能会遇到想要快速精准定位到某个词或某个句子的情况,这篇文章我们一起来学习一下解决办法。应用案例下图为一份多页文档,罗列的是鲁迅名言警句,当前光标在文档标题处,下面我们想要...

2023-08-24 #经典句子

现在进行时怎么学?4大融合拆分 活学英语语法

现在进行时怎么学?4大融合拆分 活学英语语法

...单复数,第三人称复数,be动词用are举个例子“他们正在办公室里开会。”按步骤组合主语为他们,即They主语为第三人称复数,be动词用are开会有个固定短语:have a meeting, 正在开会即having a meeting完整句子:They are having a meeting i...

2022-11-16 #经典句子

小学语文常见题型:将对话改间接引语 教孩子“你我他”解题思路

小学语文常见题型:将对话改间接引语 教孩子“你我他”解题思路

...乱。比如下面的例题:老师对小红说:“你去叫小王来我办公室一趟。”人物为老师、小红、小王。因为“你”、“我”在句中都是代词,全部去掉。“你”代指小红,“我”代指老师。二、根据句意理清人物关系一句话概括:...

2023-05-12 #经典句子

老师留作业“写800字作文” 孩子为凑字数拼了 老师:来办公室

老师留作业“写800字作文” 孩子为凑字数拼了 老师:来办公室

...师留作业“写800字作文”,孩子为凑字数拼了,老师:来办公室。前几天有一个语文老师在网上分享了自己的经历。由于这名老师所教的年级是四年级,而四年级对于学生的要求是有点高的。所以英语老师为了检测学生们的实际...

2023-01-20 #经典句子

咪鼠智能语音鼠标S5B 语音打字 快速识别 办公利器

咪鼠智能语音鼠标S5B 语音打字 快速识别 办公利器

作为办公的利器,说一句话就可以语音打字,那不得不提咪鼠的智能语音鼠标,咪鼠智能语音鼠标目前也是有很多的型号,针对的也是不同人群的购买需求,最近咪鼠又发布了新品,那就是咪鼠智能语音鼠标S5B,是一款集语音打...

2022-11-24 #经典句子

颜值高能语音打字 聪明的咪鼠智能语音鼠标S5B或是办公最佳之选

颜值高能语音打字 聪明的咪鼠智能语音鼠标S5B或是办公最佳之选

...原因之一,那就是它自带语音打字功能。这个功能可谓是办公利器,1分钟能实现400字的识别,而且识别率达到98%,还能识别多种方言。这样的功能在快节奏的工作中简直是个神器。而且还有一大妙用,就是在开会的时候,用它...

2023-05-28 #经典句子