每天一点数据库之-----Day 4 数据的简单查询

时间:2021-12-17 11:25:50

每天一点数据库之-----Day 4 数据的增改删

                                                                    ----转载请注明出处:coder-pig



本节引言:

本节介绍的是最简单的数据检索(查询),就是SELECT的最基本用法~

针对本节查询,我们先建立一个工作人员表,以及录入一些几条记录:

包括,人员id,人员姓名,年龄,性别,工资,以及部门名称:

建表SQL:

CREATE TABLE T_Worker(     FId INTEGER ,     FName VARCHAR ( 20),     FAge INTEGER ,     FSex VARCHAR (10),     FSalary DECIMAL ( 10, 2 ),     FDName VARCHAR ( 20),     PRIMARY KEY ( FId))


往空表中插入几条记录:

INSERT INTO T_Worker (FId , FName, FAge ,FSex , FSalary, FDName )VALUES ( 1, 'Tom' ,18 , 'Man', 1800 ,' 人事部 ');INSERT INTO T_Worker (FId , FName, FAge ,FSex , FSalary, FDName )VALUES ( 2, 'Jay' ,21 , 'Man', 2800 ,' 财务部 ');INSERT INTO T_Worker (FId , FName, FAge ,FSex , FSalary, FDName )VALUES ( 3, 'Mary' ,22 , 'Woman', 2800 ,' 财务部 ');INSERT INTO T_Worker (FId , FName, FAge ,FSex , FSalary, FDName )VALUES ( 4, 'John' ,26 , 'Man', 4000 ,' 技术部 ');INSERT INTO T_Worker (FId , FName, FAge ,FSex , FSalary, FDName )VALUES ( 5, 'Jenny' ,35 , 'Woman', 5000 ,' 管理层 ');INSERT INTO T_Worker (FId , FName, FAge ,FSex , FSalary, FDName )VALUES ( 6, 'Andy' ,18 , 'Man', 8000 ,' 老板 ');

运行后的结果:

每天一点数据库之-----Day 4 数据的简单查询

好了,完成上述的步骤后,就开始本节的学习了!



本节正文:



1.最简单的查询表中所有信息:

插入完数据后,我们肯定要查询一下啦,如上面给出的图,就是使用SELECT查询出来的表中的

所有数据,SQL语句如下:

SELECT * FROM T_Worker

没错,就是这么简单~就可以查询出表中所有的信息!

每天一点数据库之-----Day 4 数据的简单查询




2.查询需要的列

当然,更多的时候,我们会查询特定的列而非所有信息

只需把*号换成你所需要的列名,比如:

SELECT FId , FName, Fage FROM T_Worker

运行SQL语句后:

每天一点数据库之-----Day 4 数据的简单查询




3.为检索出来的列设置别名

有些时候,可能列名意思不容易理解或者,你不喜欢,

比如,你看FName不爽,想改成Name或者中文"姓名"

都可以,中文的话只要DBMS支持就可以~

SELECT FId , FName AS ' 姓名 ', Fage AS '年龄 ' FROM T_Worker

运行SQL后:

每天一点数据库之-----Day 4 数据的简单查询




4.按条件过滤

除了上面的,我们还可以在查询的时候,添加筛选(过滤),比如,我们查询表中

年龄小于30的,工资大于3000的人员的姓名

SELECT FName FROM T_Worker WHERE FSalary > 3000 AND Fage < 30

运行截图:

每天一点数据库之-----Day 4 数据的简单查询

当然,除了AND,你还夜用NOT,OR等,后面高级过滤再深入学习~




5.数据求总和,平均值,最大,最小值,记录数

有时我们需要找出表中某个字段的"五值",总和,平均值,最大,最小值,记录数;

这个时候可以用到数据库中的"聚合函数"

分别对应:SUM,AVG,MAX,MIN,COUNT

好了,写个例子:找出工资中的前面的四个值:

SELECTSUM (FSalary ) AS '总和 ' ,AVG (FSalary ) AS '平均数 ' ,MAX (FSalary ) AS '最大值 ' ,MIN (FSalary ) AS '最小值 'FROM T_Worker

运行截图:

每天一点数据库之-----Day 4 数据的简单查询

最后,还有COUNT,这个是用来统计记录数量的:

这里要注意的是COUNT(*)和COUNT 某个列名,比如:

SELECT COUNT (*) FROM T_Worker

~~~~这个是统计结果总条数的! SELECT COUNT (FAge) FROM T_Worker

~~~这个是统计对应字段不为空的记录的总条数!

大家可要区分开来哦!!




6.取出的数据的同时排序

本节最后,再介绍一个知识点吧,就是取出表中的数据时,我们可以设置他们的顺序

升序(ASC)或者降序(DESC),比如:取出表中所有顺序,分别按升序,降序排列:

SELECT * FROM T_Worker ORDER BY FAge ASC

运行后:

每天一点数据库之-----Day 4 数据的简单查询

按照降序排列:

SELECT * FROM T_Worker ORDER BY FAge DESC

运行后:

每天一点数据库之-----Day 4 数据的简单查询

好了,这个新技能你get了没~





最后说两句:

好的,关于数据的简单检索就学习到这里,下一节我们就要了解一些高级点的东西了~