详解DQL查询语句 |
您所在的位置:网站首页 › dql语句作用的描述 › 详解DQL查询语句 |
我们都知道SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL。其中DQL也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其它类型的SQL语句一起使用,共同构成了DQL查询语言的核心部分。本文我们就来聊一聊DQL查询语句。
下面我们就通过4个应用实例,来深入分析DQL查询语句。
1.排序 select 字段 from 表名 where 字段=值 order by 字段 asc|desc; asc 升序 desc 降序
组合排序 select * from 表名 order by age desc ,math desc;
2.聚合函数 max(列名):求这一列的最大值 min(列名):求这一列的最小值 avg(列名):求这一列的平均值 count(列名):统计这一列有多少条记录 sum(列名):对这一列求总和
-- 查询学生总数 select count(id) as 总人数 from student; select count(*) as 总人数 from student; -- 查询年龄大于 20 的总数 select count(*) from student where age>20; -- 查询数学成绩总分 select sum(math) 总分 from student; -- 查询数学成绩平均分 select avg(math) 平均分 from student; -- 查询数学成绩最高分 select max(math) 最高分 from student; -- 查询数学成绩最低分 select min(math) 最低分 from student;
3.limit语句 LIMIT 是限制的意思,所以 LIMIT 的作用就是限制查询记录的条数。 LIMIT offset,length; offset:起始行数,从 0 开始计数,如果省略,默认就是 0 length: 返回的行数
SELECT *|字段列表 [as 别名] FROM 表名 [WHERE 子句] [GROUP BY 子句][HAVING 子句][ORDER BY 子句][LIMIT 子句]; -- 查询学生表中数据,从第 3 条开始显示,显示 6 条。 select * from student3 limit 2,6; -- 如果第一个参数是 0 可以省略写: select * from student3 limit 5;
4.分组 分组查询是指使用 GROUP BY 语句对查询信息进行分组,相同数据作为一组 SELECT 字段 1,字段 2... FROM 表名 GROUP BY 分组字段 [HAVING 条件]; GROUP BY 怎么分组的? 将分组字段结果中相同内容作为一组,如按性别将学生分成 2 组。
-- 按性别进行分组,求男生和女生数学的平均分 select sex, avg(math) from student3 group by sex;
having 与 where 的区别 子名 作用 where 子句 1) 对查询结果进行分组前,将不符合 where 条件的行去掉,即在分组之前过滤数据,即先过滤 再分组。 2) where 后面不可以使用聚合函数 having 子句 1) having 子句的作用是筛选满足条件的组,即在分组之后过滤数据,即先分组再过滤。 2) having 后面可以使用聚合函数
事实上,DQL查询语句的用法远不止于此,我们除了要掌握DQL的基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块,还要学会DQL语句的标准语法,才能真正意义上掌握DQL查询语句。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |