SQL聚合函数「建议收藏」

SQL聚合函数「建议收藏」一、知识点聚合函数对组执行计算并返回每个组唯一的值。GROUPBY子句通常与聚合函数一起用于统计数据。GROUPBY子句将行排列成组,聚合函数返回每个组的统计量。常用的聚合函数有:COUNT(),SUM(),AVG(),MIN(),MAX()。COUNT(),其作用主要是返回每个组的行数,也会返回有NULL值的列,可用于数字和字符列。SUM(),主要用于返回表达式中所有的总和,忽略NULL值,仅用于数字列。AVG(),返回表达式所有的平均值,仅用于数字列并且自动忽略NULL值。MIN(),返

大家好,又见面了,我是你们的朋友全栈君。

一、知识点
聚合函数对组执行计算并返回每个组唯一的值。GROUP BY子句通常与聚合函数一起用于统计数据。GROUP BY子句将行排列成组,聚合函数返回每个组的统计量。
常用的聚合函数有:COUNT(),SUM(),AVG(),MIN(),MAX()。
COUNT(),其作用主要是返回每个组的行数,也会返回有NULL值的列,可用于数字和字符列。
SUM(),主要用于返回表达式中所有的总和,忽略NULL值,仅用于数字列。
AVG(),返回表达式所有的平均值,仅用于数字列并且自动忽略NULL值。
MIN(),返回表达式中的最小值,忽略NULL值,可用于数字、字符和日期时间列。
MAX(),返回表达式中的最大值,忽略NULL值,可用于数字、字符和日期时间列。
二、案例分享
1.用count()返回课程数量。并查询课程进行对比。

Select*from course
Select count(cno) from course

在这里插入图片描述
在这里插入图片描述

2.查询学号为s001同学的总成绩。并查询s001同学的成绩方便对比。
查询总成绩需要使用sum()。

Select*from sc where sno=‘s001’

在这里插入图片描述

Select sum(score) from sc 
where sno=‘s001’

在这里插入图片描述

3.查询学号为s001的同学的平均成绩。
查询平均成绩,我们需要使用avg()。

Select avg(score) from sc
Where sno=‘s001’

在这里插入图片描述

4.查询学号为‘s001’最高成绩和最低成绩
查询最大用max(),最小用min()

Select min(score),max(score) From sc
Where sno=‘s001’

在这里插入图片描述

三、难点分享
使用聚合函数的难点在于精确、准确的使用方法,使用方法前还需要考虑该方法支持的数据类型。比如sum(),此方法仅用于数字列。查询最重要的还是查询的条件,需要什么查什么。此时就要使用where子句,像上面一样,使用where过滤数据,满足查询条件。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151817.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 多多客发布 3.0.0-alpha.3开源版,支持微信、百度、支付宝小程序

    多多客发布 3.0.0-alpha.3开源版,支持微信、百度、支付宝小程序

    2021年7月3日
    83
  • 2020最新-精选基础算法100题(面试必备)[通俗易懂]

    2020最新-精选基础算法100题(面试必备)[通俗易懂]0x01.概述作为一个程序员,算法能力必不可少,虽然不一定是算法工程师,但是算法还是彰显着个人的编码能力,面试中也经常会被问到,甚至会被要求临场做算法题,所以,还是好好积累吧。个人其实对算法挺有兴趣的,从3月份开始,陆陆续续刷了一些算法题,把一些有意义的记录下来了,也顺便写了一些题解,个人认为,还是挺有收获的。之前写了一篇算法文章的目录,不过后来就忘了实时去更新了,于是现在,想把之前做过的一些有意义的算法题分享出来,刚好整理了100篇比较有意义的。希望对大家有所帮助。0x02.说明关

    2022年6月7日
    51
  • EXTJS 教程目录

    EXTJS 教程目录  本人开发extjs有两三个月了,做了三个左右的项目,其中后台都是用它来完成的。现在想借此机会整理一下用extjs开发的一些思维。  其实本人并没有完全地看过一本extjs的书籍,只是在开发过程中遇到什么问题就去百度什么。结果到现在开发时基本的东西都记不住,每次都是从旧项目中拷贝要用的东西出来,结果效率很慢。ps:以下教程都是采用extjs3.4都编写的  言归正传,以下的目录…

    2022年6月21日
    24
  • linux基本命令iscsiadm,tgtadm和iscsiadm命令的用法

    linux基本命令iscsiadm,tgtadm和iscsiadm命令的用法:关联到指定lun上的后端存储设备,此例为分区-I–initiator-address:指定可以访问Target的IP地址具体用法请mantgtadm二.iscsiadm命令iscsiadm是个模式化的工具,其模式可通过-m或–mode选项指定,常见的模式有discoverydb、node、fw、session、host、iface几个,如果没有额外指定其它选项,则discoveryd…

    2022年8月23日
    11
  • mysqlnavicat连接不上_navicat打开连接报错

    mysqlnavicat连接不上_navicat打开连接报错前提,解压版MySQL问题描述,Navicat可以连接远程数据库,但是连接本地数据库时报10038解决方式,百度说,查看服务是否启动,但是打开我的服务根本就没有看到MySQL字样。我的解决方式是,用系统管理员启动cmd.exe,然后运行mysqldinstallMySQL,提示服务提示成功后,执行netstartmysql重新启动MySQL。再Navicat连接本地连接,连接成…

    2022年10月13日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号