Day-7:汇总数据

1、聚集函数:对行运行的函数,计算并返回一个值。

  avg()返回一列的平均值

  count()返回一列的行数

  max()返回一列的最大值

  min()返回一列的最小值

  sum()返回一列的总和值

1、1avg()

  例子:返回products表中所有产品的平均价格

select avg(prod_price) as avg_price
from products

/*
avg_price
6.823333
*/

  例子:返回DLL01供应商的产品的平均价格(行)

select avg(prod_price) as avg_price
from products
where vend_id = ‘DLL01‘;

/*
avg_price
3.865000
*/

1、2count()函数

  例子:customers表中用户总数(行数)

select count(*) as num_cust
from customers;

/*
num_cust
5
*/

  例子:具有电子邮箱地址的用户数

select count(cust_email) as num_cust
from customers;

/*
num_cust
3
*/

注意:如果指定列名,则count()函数会忽略NULL,如是*则不会忽略。

1、3max()函数

  例子:返回表中最贵的物品的价格

select max(prod_price) as max_price
from products;

/*
max_price
11.99
*/

1、4min()函数

  例子:返回表中最便宜的物品的价格

select min(prod_price) as min_price
from products;

/*
min_price
3.49
*/

1、5sum()函数

  例子:orderitems表中物品总数(quantity值这和)

select sum(quantity) as items_ordered
from orderitems
where order_num = 20005;

/*
items_ordered
200
*/

  例子:返回物品总价值

 

select sum(quantity*item_price) as total_price
from orderitems
where order_num = 20005;
/*
total_price
1648.00
*/

2、聚集不同值

  以上5个聚集函数都可以加参数

  ALL参数(默认)或无参数对所有行执行计算

  DISTINCT参数,只包含不同的值,不能用于count(*)中

  例子:不同价格的平均值

select avg(distinct prod_price) as avg_price
from products
where vend_id = ‘DLL01‘;

/*
avg_price
4.240000
*/

3、组合聚集函数

select count(*) as num_items,
       min(prod_price) as price_min,
       max(prod_price) as price_max,
       avg(prod_price) as price_avg,
       sum(prod_price) as price_sum
from products;

/*
num_items price_min price_max price_avg price_sum
   9        3.49     11.99    6.823333    61.41
*/
时间: 2024-10-12 01:58:10

Day-7:汇总数据的相关文章

一个有趣的SQL Server 层级汇总数据问题

看SQL Server大V宋大侠的博客文章,发现了一个有趣的sql server层级汇总数据问题. 具体的问题如下: parent_id emp_id emp_name total_amout     NULL 2 Andrew 200     2 1 Nancy 100     2 3 Janet 120     3 4 Michael 80     1 5 Robert 50     每个员工的总销售额=自己的销售额+其下级员工的总销售额,     比如:     Andrew = 200_

数据库SQL语句学习笔记(7)-汇总数据

目的:我们经常需要汇总数据而不是把它们实际检索出来,例如确定表的行数,某些列的总和,某些列的最值等.此时检索所有数据只能是浪费时间和系统资源. 第一部分:SQL给出了5个聚集函数,聚集函数是指对某些行运行的函数,计算并返回一个值. SQL聚集函数 函数 说明 AVG() 返回某列的平均值 COUNT() 返回某列的行数 MAX() 返回某列的最大值 MIN() 返回某列的最小值 SUM() 返回某列的和 1.AVG() SELECT AVG(prod_price) AS average_pric

MySQL汇总数据

汇总数据 有时对数据表的操作不是表中数据本身,而是表中数据的汇总,例如 某一列数据的平均值,最大值,最小值等.而对于这些常用的数据汇总处理,MySQL提供了函数来处理. SQL聚集函数 函数 说明 COUNT() 返回某列的行数 MAX() 返回某列最大值 MIN() 返回某列最小值 AVG() 返回某列平均值 SUM() 返回某列值之和 例子: 首先显示出products表格如下: 求出prod_price列的平均值 看起来比较怪,原表只显示了一行: 求出特定行的 如vend_id =1003

SQLSERVER-使用 ROLLUP 汇总数据

表结构: CREATE TABLE [dbo].[Students]( [ID] [int] IDENTITY(1,1) NOT NULL, [StudentName] [nvarchar](50) NULL, [Sex] [int] NOT NULL, [GradeName] [nvarchar](50) NULL, [ClassName] [nvarchar](50) NULL, [BodyWeight] [decimal](18, 2) NOT NULL, [Area] [nvarchar

MySQL创建字段+数据处理函数+汇总数据(聚集函数)+分组数据

[0]README 0.1)本文部分文字描述转自"MySQL 必知必会",旨在review"MySQL创建字段+数据处理函数+汇总数据(聚集函数)+分组数据" 的基础知识: [1]创建计算字段 1)problem+solution 1.1)problem:存储在表中的数据都不是应用程序所需要的.我们需要直接从数据库中检索出转换,计算或格式化过的数据: 1.2)solution:这就是计算字段发挥作用所在了, 计算字段是运行时在 select语句内创建的: 2)字段定

sql的一些知识_函数_汇总数据

汇总数据 avg()---------求平均数 SELECT AVG(weight) AS aveweight FROM userinfo WHERE weight>70 值得注意的是:avg()只能用于一个列的平均值查询,多个列的平均值请使用多个avg() avg()忽略null值 count()-------计数(指定列的话计算非空的值总数,*计算所有) SELECT COUNT(age) AS agenum FROM userinfo SELECT COUNT(*) AS agenum F

MySQL必知应会-第12章-汇总数据

第12章 汇总数据 本章介绍什么是SQL的聚集函数以及如何利用它们汇总表的数据. 12.1 聚集函数 我们经常需要汇总数据而不用把它们实际检索出来,为此MySQL提供了专门的函数.使用这些函数, MySQL查询可用于检索数据,以便分析和报表生成.这种类型的检索例子有以下几种. 确定表中行数(或者满足某个条件或包含某个特定值的行数). 获得表中行组的和. 找出表列(或所有行或某些特定的行)的最大值.最小值和平均值.上述例子都需要对表中数据(而不是实际数据本身)汇总.因此,返回实际表数据是对时间和处

SQL必知必会 笔记 第九章 汇总数据

9.1聚集函数 聚集函数(aggregate function):运行在行组上,计算和返回单个值的函数. 9.1.1AVG()函数 AVG()通过对表中行数计数并计算特定列值之和,求得该列的平均值. SELECT AVG(prod_price) AS avg_price FROM Products WHERE vend_id = 'DLL01'; 只用于单个列:AVG()只能用来确定特定数值列的平均值,而且列名必须作为函数参数给出,为了获得多个列的平均值,必须使用多个AVG()函数. NULL值

SQL语句汇总——数据修改、数据查询

首先创建一张表如下,创建表的方法在上篇介绍过了,这里就不再赘述. 添加新数据: INSERT INTO <表名> (<列名列表>) VALUES (<值列表>)  如: INSERT INTO t_student (student_id,student_name,student_age,student_sex) VALUES (1,'大毛',18,'男'); 其中列名可以省略,省略之后要求插入的值必须与列一一对应: INSERT INTO t_student VALUE