Mysql查询结果的排序和分页及group by、having的应用场景及使用

查询结果排序和分页order by的使用在SQL中,使用order by对查询结果集进行排序,可以按照一列或多列进行排序。order by语法select column_name1,column_name2from table_name1,table_name2order by column_name,column_name [ASC|DESC]说明:ASC表示按升序排列,DESC表示按降序排列。默认情况下,对列按升序排列。limit的使用在select语句中使用limit子句来
摘要由CSDN通过智能技术生成

查询结果排序和分页

order by的使用
在SQL中,使用order by对查询结果集进行排序,可以按照一列或多列进行排序。

order by语法

select column_name1,column_name2
from table_name1,table_name2
order by column_name,column_name [ASC|DESC]

说明:

  1. ASC表示按升序排列,DESC表示按降序排列。
  2. 默认情况下,对列按升序排列。

limit的使用
在select语句中使用limit子句来约束要返回的记录数,通常使用limit实现分页

limit语法

select column_name1,column_name2
from table_name1,table_name2
limit [offset,] row_count

说明:

  1. offset指定要返回的第一行的偏移量。第一行的偏移量是0,而不是1。
  2. row_count指定要返回的最大行数。

limit的分页公式:

limit (page-1)*row_count, row_count

group by、having的应用场景及使用

group by的应用场景
我们已经知道select语句结合where查询条件获取需要的数据,但在实际的应用中,还会遇到下面这类需求,比如:公司想知道每个部门有多少名员工;班主任想统计各科第一名的成绩;某门店想掌握男、女性会员的人数及平均年龄

group by的使用
从字面上理解,group by表示根据某种规则对数据进行分组,它必须配合聚合函数进行使用,对数据进行分组后可以进行count、sum、avg、max和min等运算。

group by语法

select column_name,aggregate_function(column_name)
from table_name
group by column_name

说明:

  1. aggregate_function表示聚合函数。
  2. group by可以对一列或多列进行分组。

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

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

建表、插入数据

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值