【基础篇】MySQL系列之分组和聚合函数组合使用

导读:本篇文章讲解 【基础篇】MySQL系列之分组和聚合函数组合使用,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

               🔹大家好,我是颜语凌。

               🔶个人主页:颜语凌

               🔹文章介绍:MySQL基础篇系列文章

               🔶欢迎点赞➕关注➕评论

目录

一、数据准备

 二、分组和聚合函数

三、小结 


一、数据准备

这里我们把京东上笔记本的一些信息保存到数据库。

首先,我们先创建一个数据库jing_dong,再创建一个表goods来存储信息,SQL语句如下:

-- 创建 "京东" 数据库
create database jing_dong charset=utf8;

-- 使用 "京东" 数据库
use jing_dong;

-- 创建一个商品goods数据表
create table goods(
    id int unsigned primary key auto_increment not null,
    name varchar(150) not null,
    cate_name varchar(40) not null,
    brand_name varchar(40) not null,
    price decimal(10,3) not null default 0,
    is_show bit not null default 1,
    is_saleoff bit not null default 0
);

然后,我们将数据插入到goods表(这里由于数据太多,只写了前五个)中,SQL语句如下:

insert into goods values(0,'r510vc 15.6英寸笔记本','笔记本','华硕','3399',default,default); 
insert into goods values(0,'y400n 14.0英寸笔记本电脑','笔记本','联想','4999',default,default);
insert into goods values(0,'g150th 15.6英寸游戏本','游戏本','雷神','8499',default,default); 
insert into goods values(0,'x550cc 15.6英寸笔记本','笔记本','华硕','2799',default,default); 
insert into goods values(0,'x240 超极本','超级本','联想','4880',default,default); 

最后,我们查询一下jing_dong数据库下的表goods。

【基础篇】MySQL系列之分组和聚合函数组合使用

表结构说明:

  • id 表示主键 自增
  • name 表示商品名称
  • cate_name 表示分类名称
  • brand_name 表示品牌名称
  • price 表示价格
  • is_show 表示是否显示
  • is_saleoff 表示是否售完

 到此我们的数据已经准备完成了~

 

 二、分组和聚合函数

  1. 查询类型cate_name为 ‘超极本’ 的商品名称、价格

     select name,price from goods where cate_name = '超级本';
    
  2. 显示商品的分类

     select cate_name from goods group by cate_name;
    
  3. 求所有电脑产品的平均价格,并且保留两位小数

     select round(avg(price),2) as avg_price from goods;
    
  4. 显示每种商品的平均价格

     select cate_name,avg(price) from goods group by cate_name;
    
  5. 查询每种类型的商品中 最贵、最便宜、平均价、数量

     select cate_name,max(price),min(price),avg(price),count(*) 
     from goods group by cate_name;
    
  6. 查询所有价格大于平均价格的商品,并且按价格降序排序

     select id,name,price from goods 
     where price > (select round(avg(price),2) as avg_price from goods) 
     order by price desc;

 

三、小结 

  •  group by函数用来查询后按照by后的内容分组
  • round()函数用来对数据的小数部分处理
  • max(),min(),avg(),count()分别表示对数据取最大值,最小值,平均值,数量
  • order by … desc对选中的数据进行降序排序

 

🌴END~

 

 

 

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

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/61458.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!