sql语法基础,聚合函数

聚合查询:
对表中内容进行汇总函数
01记录函数–count
所谓记录函数就是将表中的内容通过记录函数count将其转化为数值输出。
格式:
count(参数)

注意:这里的转化为数值并不是指累加,平均值等算数行为的操作。而是单纯的记录。
在count中参数可以为*这是和其他函数的一个主要区别

例一记录PRODUCT表中所有的函数

SELECT COUNT(*)
FROM PRODUCT
--这里的参数称为返回值

执行
在这里插入图片描述```
执行

例二计算purchase_price以及sale_price行数

在这里插入图片描述

SELECT COUNT(purchase_price)AS purchase,
       COUNT(sale_price) AS sale
FROM PRODUCT

执行
在这里插入图片描述
在purchase中存在null,在计数时可以看成等价为0,不参与计数

说白了,count(*)会计录所有的行数包括null。
count(参数)只会记录非0行的行数

02计算合计值–sum
格式:
sum(参数)

计算合计值说白了就是计算累加之后的结果,输出的是累加过后的和。
例三计算sale_price和purchase_price的合计值

SELECT SUM(purchase_price)AS purchase,
       SUM(sale_price) AS sale
FROM PRODUCT

在这里插入图片描述
事实上purchase中包含null
也就是说null可以被计算出
想想看之前我们学过“四则运算遇到null结果必为null
好像矛盾!
所有的聚合函数在执行时都会把null排除在外(除count(*))外
也可以理解为在聚合函数中null都被当做0对待

03计算平均值–avg
格式:
avg(参数)
例四计算sale_price和purchase_price平均值

SELECT AVG(purchase_price)AS purchase,
       AVG(sale_price) AS sale
FROM PRODUCT

执行
在这里插入图片描述
同样的在avg计算时可以将null看作0

04计算最值–max,min
格式
max/min(参数)
区别于其他聚合函数,只要能进行排序的函数类型都可以使用max与min,比如字符串类型数据和日期类型数据
例五从purchase_price中选择最小值,从sale_price中选择最大值

SELECT MIN(product_type)AS type,
       MAX(sale_price) AS sale
FROM PRODUCT

执行
在这里插入图片描述
05去除重复数据–DISTINCT
所有聚合函数都可以使用DISTINCT去除重复值
一般使用在参数前使用DISTINCT也就是聚合函数的括号内
这是因为如果在括号外会先进行聚合函数,再删除重复数据
例六统计sale_price和purchase_price行数要求没有重复内容

SELECT COUNT(DISTINCT product_type)AS type,
       COUNT(DISTINCT sale_price) AS sale
FROM PRODUCT

执行
在这里插入图片描述
distinct会自动去除重复的行,并且把null排除在外

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值