group by 与 order by的用法
GROUP BY 语句用于结合聚合函数,根据一个或多个列对结果集进行分组。
SQL GROUP BY 语法
SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;

下面是 “access_log” 网站访问记录表的数据:

mysql> SELECT * FROM access_log;
±----±--------±------±-----------+
| aid | site_id | count | date |
±----±--------±------±-----------+
| 1 | 1 | 45 | 2016-05-10 |
| 2 | 3 | 100 | 2016-05-13 |
| 3 | 1 | 230 | 2016-05-14 |
| 4 | 2 | 10 | 2016-05-14 |
| 5 | 5 | 205 | 2016-05-14 |
| 6 | 4 | 13 | 2016-05-15 |
| 7 | 3 | 220 | 2016-05-15 |
| 8 | 5 | 545 | 2016-05-16 |
| 9 | 3 | 201 | 2016-05-17 |
±----±--------±------±-----------+
9 rows in set (0.00 sec)
GROUP BY 简单应用
统计 access_log 各个 site_id 的访问量:

实例
SELECT site_id, SUM(access_log.count) AS nums
FROM access_log GROUP BY site_id;

HAVING 子句
在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与聚合函数一起使用。
HAVING 子句可以让我们筛选分组后的各组数据。
SQL HAVING 语法

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value;

where 和having之后都是筛选条件,但是有区别的:
1.where在group by前, having在group by 之后
2.聚合函数(avg、sum、max、min、count),不能作为条件放在where之后,但可以放在having之后

SQL ORDER BY 关键字
ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。
ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,您可以使用 DESC 关键字。

SQL ORDER BY 语法
SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;

默认是升序排序的。

group by 与 order by的用法相关推荐

  1. SQL语句where,Group By,having order by 的详细使用方法

    为什么80%的码农都做不了架构师?>>>    1. Group By 语句简介: Group By语句从英文的字面意义上理解就是"根据(by)一定的规则进行分组(Grou ...

  2. 查询语句中select from where group by having order by的执行顺序

    查询语句中select from where group by having order by的执行顺序 1.查询中用到的关键词主要包含六个,并且他们的顺序依次为  select--from--whe ...

  3. sql grop by having order by 的用法

    GROUP BY 语句 group by 一般和聚合函数一起使用,根据一个或者多字段对结果集进行分组统计. 使用示例:orders表为例 O_Id OrderDate OrderPrice Custo ...

  4. group by和order by的用法和区别

    一.order by的用法 使用order by,一般是用来,依照查询结果的某一列(或多列)属性,进行排序(升序:ASC:降序:DESC:默认为升序). 当排序列含空值时: ASC:排序列为空值的元组 ...

  5. 浅谈group by和order by的用法和区别

    前一段时间的面试,问道这个问题,不太清楚了,感觉有必要来总结一下.话不多说,直接开始吧! 一.order by的用法 使用order by,一般是用来,依照查询结果的某一列(或多列)属性,进行排序(升 ...

  6. 当一个查询语句同时出现了where,group by,having,order by的时候,执行顺序和编写顺序

    当一个查询语句同时出现了where,group by,having,order by的时候,执行顺序和编写顺序  使用count(列名)当某列出现null值的时候,count(*)仍然会计算,但是co ...

  7. group by 和 order by 的区别 + 理解过程

    order by 和 group by 的区别 order by 和 group by 的区别: 1,order by 从英文里理解就是行的排序方式,默认的为升序. order by 后面必须列出排序 ...

  8. select的5中子句where,group by, havaing, order by, limit的使用顺序及实例

    -- 语法: SELECT select_list FROM table_name [ WHERE search_condition ] [ GROUP BY group_by_expression ...

  9. mysql “group by ”与order by的研究--分类中最新的内容

    这两天让一个数据查询难了.主要是对group by 理解的不够深入.才出现这样的情况 这种需求,我想很多人都遇到过.下面是我模拟我的内容表 我现在需要取出每个分类中最新的内容 select * fro ...

最新文章

  1. 好文 | “智能经济”时代,协作机器人的应用前景与趋势探讨
  2. 项目实战之组件化架构
  3. axios的简单使用
  4. sTC8G1K08+通过串口显示内部电压_基于51单片机的数字电流电压表
  5. html状态查询爱站,批量获取爱站数据
  6. Java核心篇之多线程---day1
  7. 后台管理系统推荐(PHP)
  8. 链表实现直接选择排序
  9. 【图像去噪】基于BM3D算法实现图像去噪含Matlab源码
  10. 控制系统|反馈系统的稳定性分析
  11. 关于异业联盟和O2O商业模式的一些想法
  12. “重塑安全边界,揭秘零信任业务保障”,联软科技下一代零信任访问管理系统发布
  13. Python画爱心——一颗会跳动的爱心~
  14. SudaMod-81.0 / crDroidAndroid-8.1(android-8.1.0_r20)红米3 2018年5月3日更新
  15. LoRaWAN入网参数设置
  16. 什么是照度(光照强度)?
  17. 【期末复习笔记】知识产权法——著作权、专利法、商标权
  18. 使用Cluster API提供裸金属Kubernetes
  19. Java8之新日期时间篇
  20. 【转】大学四年因为知道了这32个网站,我成了别人眼中的大神!

热门文章

  1. 哈夫曼树【北邮机试】
  2. ASP中Err.number返回的错误代码解释大全
  3. 如何将 Credly 中的数字徽章转成二维码
  4. OpenCV图像特征SIFT
  5. Android Studio基础输入文本框EditText
  6. 知数堂全网通缉这个人
  7. Android高性能音频之opensl es播放流程(七)
  8. 电子制作——一个电调的诞生之路
  9. Power BI——柱形图
  10. [Vuetify] 解决mainterialicon加载慢