🔹大家好,我是颜语凌。
🔶个人主页:颜语凌
🔹文章介绍: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。
表结构说明:
- id 表示主键 自增
- name 表示商品名称
- cate_name 表示分类名称
- brand_name 表示品牌名称
- price 表示价格
- is_show 表示是否显示
- is_saleoff 表示是否售完
到此我们的数据已经准备完成了~
二、分组和聚合函数
-
查询类型cate_name为 ‘超极本’ 的商品名称、价格
select name,price from goods where cate_name = '超级本';
-
显示商品的分类
select cate_name from goods group by cate_name;
-
求所有电脑产品的平均价格,并且保留两位小数
select round(avg(price),2) as avg_price from goods;
-
显示每种商品的平均价格
select cate_name,avg(price) from goods group by cate_name;
-
查询每种类型的商品中 最贵、最便宜、平均价、数量
select cate_name,max(price),min(price),avg(price),count(*) from goods group by cate_name;
-
查询所有价格大于平均价格的商品,并且按价格降序排序
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