每天一点数据库之-----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 ,' 老板 ');
运行后的结果:
好了,完成上述的步骤后,就开始本节的学习了!
本节正文:
1.最简单的查询表中所有信息:
插入完数据后,我们肯定要查询一下啦,如上面给出的图,就是使用SELECT查询出来的表中的
所有数据,SQL语句如下:
SELECT * FROM T_Worker
没错,就是这么简单~就可以查询出表中所有的信息!
2.查询需要的列
当然,更多的时候,我们会查询特定的列而非所有信息
只需把*号换成你所需要的列名,比如:
SELECT FId , FName, Fage FROM T_Worker
运行SQL语句后:
3.为检索出来的列设置别名
有些时候,可能列名意思不容易理解或者,你不喜欢,
比如,你看FName不爽,想改成Name或者中文"姓名"
都可以,中文的话只要DBMS支持就可以~
SELECT FId , FName AS ' 姓名 ', Fage AS '年龄 ' FROM T_Worker
运行SQL后:
4.按条件过滤
除了上面的,我们还可以在查询的时候,添加筛选(过滤),比如,我们查询表中
年龄小于30的,工资大于3000的人员的姓名
SELECT FName FROM T_Worker WHERE FSalary > 3000 AND Fage < 30
运行截图:
当然,除了AND,你还夜用NOT,OR等,后面高级过滤再深入学习~
5.数据求总和,平均值,最大,最小值,记录数
有时我们需要找出表中某个字段的"五值",总和,平均值,最大,最小值,记录数;
这个时候可以用到数据库中的"聚合函数"
分别对应:SUM,AVG,MAX,MIN,COUNT
好了,写个例子:找出工资中的前面的四个值:
SELECTSUM (FSalary ) AS '总和 ' ,AVG (FSalary ) AS '平均数 ' ,MAX (FSalary ) AS '最大值 ' ,MIN (FSalary ) AS '最小值 'FROM T_Worker
运行截图:
最后,还有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
运行后:
按照降序排列:
SELECT * FROM T_Worker ORDER BY FAge DESC
运行后:
好了,这个新技能你get了没~
最后说两句:
好的,关于数据的简单检索就学习到这里,下一节我们就要了解一些高级点的东西了~