排序查询

语法:order by 子句

order by 排序字段1 排序方式1 , 排序字段2 排序方式2...

排序方式:

ASC:升序,默认的。

DESC:降序。

注意:

如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件。

聚合函数

将一列数据作为一个整体,进行纵向的计算。

count:计算个数

一般选择非空的列:主键

select count(id) from 表名

max:计算最大值

min:计算最小值

sum:计算和

avg:计算平均值

注意:聚合函数的计算,排除null值。

解决方案:

1. 选择不包含非空的列进行计算

2. IFNULL函数

分组查询:

语法:group by 分组字段;

注意:

分组之后查询的字段:分组字段、聚合函数

where 和 having 的区别?

where 在分组之前进行限定,如果不满足条件,则不参与分组。having在分组之后进行限定,如果不满足结果,则不会被查询出来

where 后不可以跟聚合函数,having可以进行聚合函数的判断。

-- 按照性别分组。分别查询男、女同学的平均分

SELECT sex , AVG(math) FROM student GROUP BY sex;

-- 按照性别分组。分别查询男、女同学的平均分,人数

SELECT sex , AVG(math),COUNT(id) FROM student GROUP BY sex;

-- 按照性别分组。分别查询男、女同学的平均分,人数 要求:分数低于70分的人,不参与分组

SELECT sex , AVG(math),COUNT(id) FROM student WHERE math > 70 GROUP BY sex;

-- 按照性别分组。分别查询男、女同学的平均分,人数 要求:分数低于70分的人,不参与分组,分组之后。人数要大于2个人

SELECT sex , AVG(math),COUNT(id) FROM student WHERE math > 70 GROUP BY sex HAVING COUNT(id) > 2;

SELECT sex , AVG(math),COUNT(id) 人数 FROM student WHERE math > 70 GROUP BY sex HAVING 人数 > 2;

分页查询

语法:limit 开始的索引, 每页查询的条数;

公式:开始的索引 = (当前的页码 - 1) * 每页显示的条数

exam:每页显示3条记录

SELECT * FROM student LIMIT 0,3; -- 第1页

SELECT * FROM student LIMIT 3,3; -- 第2页

SELECT * FROM student LIMIT 6,3; -- 第3页

mysql group 分页_【MySQL】条件查询之排序聚合分组分页查询相关推荐

  1. SQL service基础(二)对数据指定列查询、条件查询、查询结果排序、聚集函数查询、分组统计查询

    实验目标: 1.掌握指定列或全部列查询 2.掌握按条件查询 3.掌握对查询结果排序 4.掌握使用聚集函数的查询 5.掌握分组统计查询 一.请完成书中实验7.1,并完成以下问题. 1.查询所有学生的姓名 ...

  2. mysql桦仔_带您理解SQLSERVER是如何执行一个查询的

    带您理解SQLSERVER是如何执行一个查询的 看这篇文章之前,阁下可以先看一下下面的文章 翻译自: 不知道是哪篇文章抄哪篇文章的 ,不管他了,我也偷他们的文章,嘎嘎嘎嘎嘎... 我将会用尽本人的所有 ...

  3. mysql group by month_sql - MySQL查询GROUP BY日/月

    sql - MySQL查询GROUP BY日/月 有可能我做一个简单的查询来计算我在一个确定的时间段内有多少记录,如年,月或日,有一个TIMESTAMP字段,如: SELECT COUNT(id) F ...

  4. explain mysql怎么用_[mysql] mysql explain 使用

    explain显示了mysql如何使用索引来处理select语句以及连接表.可以帮助选择更好的索引和写出更优化的查询语句. 先解析一条sql语句,看出现什么内容 EXPLAINSELECTs.uid, ...

  5. long mode 分页_在Spring Boot中使用Spring-data-jpa实现分页查询(转)

    在我们平时的工作中,查询列表在我们的系统中基本随处可见,那么我们如何使用jpa进行多条件查询以及查询列表分页呢?下面我将介绍两种多条件查询方式. 1.引入起步依赖 org.springframewor ...

  6. mysql异常恢复工具_[MySQL异常恢复]mysql ibd文件恢复

    在mysql中由于某种原因保存有ibd文件,但是表已经被删除或者frm文件损坏亦或者ibdata文件损坏/丢失等.本文模拟在这种情况下,通过mysql自身技术即可完成ibd文件恢复. 测试环境mysq ...

  7. php 查询数据排序,php如何对查询结果集进行排序

    php对查询结果集进行排序的方法:1.正向排序,代码为[case 'asc': asort($refer)]:2.逆向排序,代码为[case 'desc':arsort($refer)]:3.自然排序 ...

  8. sql server和mysql 分页_基于Sql server数据库的四种分页方式总结

    下面小编就为大家分享一篇基于sqlserver的四种分页方式总结,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧. 第一种:ROW_NUMBER() OVER()方式 select * ...

  9. MySQL explain 例子_[MySql]explain用法及实践

    写在前面 explain对我们优化sql语句是非常有帮助的.可以通过explain+sql语句的方式分析当前sql语句. 例子 EXPLAIN SELECT dt,method,url FROM ap ...

最新文章

  1. 前后端分离工程实现 (VUE、JAVA)、附全部源码
  2. JS设置弹出小窗口。
  3. Restore IP Address-深度优先遍历DFS
  4. DropDownList的AppendDataBoundItems属性
  5. 发动机冒黑烟_发动机冒黑烟的原因和解决方法
  6. Linux中ps和netstat中的相关知识点
  7. 坚果pro2官方rom_坚果 pro2线刷包_坚果 pro2刷机包_坚果 pro2固件包_坚果 pro2救砖包 - 线刷宝ROM中心...
  8. cocos2d 3.11获取机型和系统版本号
  9. 每天学一点flash(73) 恋上我的CD
  10. 【飞控开发基础教程6】疯壳·开源编队无人机-SPI(六轴传感器数据获取)
  11. VUE 获奖名单滚动显示的两种方式
  12. 基于 AHB 总线的 SRAM 控制器设计
  13. 操作系统之进程的同步机制
  14. 职业连连看模型,助你找到理想职业
  15. linux kmplayer字幕乱码解决
  16. 09数据在内存中的存储
  17. offsetTop,offset().top
  18. 中南大学c语言程序设计2013年下学期期末考试,中南大学C语言历年试卷
  19. java stax xml_Java代码:使用StAX创建xml文件
  20. vant组件库适配pc端

热门文章

  1. Matlab中的类(Class),Matlab中的class用法
  2. 怎么查看地址值_西门子S7-200 SMART PID回路控制,配置PID向导,查看项目组件
  3. 牵引力教育就业数据显示:很多大学毕业就等于失业?
  4. mysql5.623 GTID主从复制+半同步复制安装与配置
  5. Java json序列化库gson(2)
  6. Backbone.js源码解读(转载)
  7. android一些小技巧
  8. mysql做主从复制配置案例
  9. windows最重要的三个dll
  10. 陕西专科学校王牌计算机专业,陕西省高职专科院校排名+王牌专业