进阶MySql查询

    我们在使用MySQL数据库进行查询时,有的时候不单单是一个简单的select * from + 表名就能够完成我们想要的某个功能的。下面小编就记录了几种常用的查询方式。

一、聚合函数

1.聚合函数的分类

聚合函数名称作用
count统计数量
max找最大值
min找最小值
avg求平均值
sum求和

2.基本格式

select+聚合函数+(字段)+form+表名;

3.使用说明
例如:我需要统计字段courseid的数量:

select count(courseid) form course;

在这里插入图片描述
4.注意事项
当我们使用聚合函数查询时,聚合函数是不会计算null值的;

二、分组查询

1.基本格式

select + 字段+from+表名+group by +字段;

2.使用说明
例如:我们需要将courseid字段以分组的形式查询呈现出来:

select courseid from course group by courseid;

在这里插入图片描述
3.说明
    一般在使用分组查询时,不单单只使用分组查询,会联合其他的查询一起使用。因为只使用分组查询的效果它仅仅只能够展示出种类,而没有任何其他的结果;但是我们在日常使用分组的过程中又不仅仅只使用分组,因此它经常与其他查询一起使用。
    例如,在这里我们就将分组查询联合聚合函数一起使用:
我们需要统计不同courseid的数量
在这里插入图片描述
4.进阶分组查询
其实我们在使用分组查询的时候,也经常要按照某一个条件进行筛选。接下来就让小编展示如何筛选分组查询吧。分组查询的基本格式是 select + 字段+from+表名+where+条件字段=条件字段值+group by +字段 +havinig +分组后的过滤条件。例如接下来就展示一下如何筛选出上图分组后count(*)值大于1的数据。
在这里插入图片描述
不过,这里还有一点需要注意的是,在这种查询方式中, where的条件是在分组查询之前,而having的条件则是在分组查询之后起作用

三、排序查询

1.排序种类

名称作用
asc升序
desc降序

2.基本格式

select *form +表名+order by +字段1+排序种类1+字段2+排序种类2;

(说明:当我们使用多个字段按不用顺序排序时,首先是按照字段顺序排序,再依次按照后面顺序排序;)
3.使用示例
例如:我们要将courseid字段按升序查询:

select * from course order by courseid asc;

在这里插入图片描述
又例如,我们想要将上图先按照courseid的升序再按照学号降序进行排序:
在这里插入图片描述

四、分页查询

1.基本格式

select * from +字段+liimit+页数,每一页数量;

2.使用示例
例如:我们要将表course中数据按每页10行数据显示:

select * from course limit 0,10;

在这里插入图片描述

五、条件查询

1.基本格式

select * from +表名 +where+条件字段=条件字段值

2.使用示例
例如:我们想要查询courseid字段中值为cc001的行:

select * from course where courseid='cc001';

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值