MySQL查询排序与查询聚合函数用法分析

时间:2022-03-29 02:09:33

本文实例讲述了MySQL查询排序与查询聚合函数用法。分享给大家供大家参考,具体如下:

排序

为了方便查看数据,可以对数据进行排序

语法:

?
1
select * from 表名 order by 列1 asc|desc [,列2 asc|desc,...]

说明

将行数据按照列1进行排序,如果某些行列1的值相同时,则按照列2排序,以此类推

  • 默认按照列值从小到大排列(asc)
  • asc从小到大排列,即升序
  • desc从大到小排序,即降序

例1:查询未删除男生信息,按学号降序

?
1
select * from students where gender=1 and is_delete=0 order by id desc;

例2:查询未删除学生信息,按名称升序

?
1
select * from students where is_delete=0 order by name;

例3:显示所有的学生信息,先按照年龄从大–>小排序,当年龄相同时 按照身高从高–>矮排序

?
1
select * from students order by age desc,height desc;

聚合函数

为了快速得到统计数据,经常会用到如下5个聚合函数

总数

count(*)表示计算总行数,括号中写星与列名,结果是相同的

例1:查询学生总数

?
1
select count(*) from students;

最大值

max(列)表示求此列的最大值

例2:查询女生的编号最大值

?
1
select max(id) from students where gender=2;

最小值

min(列)表示求此列的最小值

例3:查询未删除的学生最小编号

?
1
select min(id) from students where is_delete=0;

求和

sum(列)表示求此列的和

例4:查询男生的总年龄

?
1
2
3
select sum(age) from students where gender=1;
-- 平均年龄
select sum(age)/count(*) from students where gender=1;

平均值

avg(列)表示求此列的平均值

例5:查询未删除女生的编号平均值

?
1
select avg(id) from students where is_delete=0 and gender=2;

希望本文所述对大家MySQL数据库计有所帮助。

原文链接:https://blog.csdn.net/kai46385076/article/details/100178180