关于count

关于count

老师,我有一个疑惑,就是http://img1.sycdn.imooc.com//climg/6083959a097153fa06840617.jpg这个count(*),我怎么判断它是统计的什么信息的个数呀。就比如http://img1.sycdn.imooc.com//climg/6083961b09a9f3d406020506.jpg这样统计了所有员工数,分组之后,为什么就能统计的是每组个数,而不是组数吗?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,

1、count(*)用来统计所有的列,相当于行数,在统计结果的时候,不会忽略列值为NULL。如下:t_emp表中有9条数据:

http://img1.sycdn.imooc.com//climg/6083b81d09a4816603770190.jpg

2、同1问,注:想根据某一列去统计需要使用count(列名),count(列名)只包括列名那一列,在统计结果的时候,会忽略列值为空。

http://img1.sycdn.imooc.com//climg/6083b8cf09bc5b9c03060073.jpg

祝学习愉快~

  • Ungalo 提问者 #1

    老师,分组统计这个是什么原理呀,左右数据数量不一致,为什么可以按照每组去统计里面的个数呢?

    2021-04-24 16:28:15
  • 好帮手慕小脸 回复 提问者 Ungalo #2

    同学你好,首先了解GROUP BY 语句用于结合聚合函数,根据一个或多个列对结果集进行分组。

    这里sql语句中是根据deptno进行的分组操作,与左右数量不一致没有关系,分组之后deptno对应的不同编号会分别统计,就比如:学校的学生有1000人,每个学生都有对应的班级,按照班级来分组统计,统计出各个班级对应的人数

    祝学习愉快~

    2021-04-24 17:18:17
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师