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