mysql--mysql与python的交互--数据准备

--准备数据

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

		--使用京东数据库
		use jingdong;
		
		--创建一个商品数据表(编号 名字 分类名  品牌名 价格 是否展示  是否售空)
		create table goods(
     id int unsigned primary key not null auto_increment,
     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_sale_off bit  not null default 0
     );
     
--插入数据
insert into goods values(0,'gehbch 15.6 英寸电脑', '笔记本', '华硕',3399,default,default);
....

在这里插入图片描述

和视频上插入的数据是不一样的,先这样,之后可以再插入。

--SQL语句的强化

--查询类型为超极本的商品名称 价格
select name,price from goods where cate_name='超级本';

--显示商品种类
 select distinct cate_name from goods;
 select cate_name from goods group by cate_name;
 

--求所有产品的平均价格,保留两位小数
select round(avg(price),2) from goods;

--显示每种商品的平均价钱
select cate_name,avg(price) from goods group by cate_name;

--查询每种类型的商品中  最贵  最便宜 平均价 数量
 select cate_name as 产品类型,max(price) as 最贵价格, min(price) as 最便宜价格,avg(price) as 平均价格,count(*) as 数量 from goods group by cate_name;

--查询所有价格大于平均价格的商品,并且按照价格降序排列
select id,name,price,(select avg(price) from goods) from goods where price>(select avg(price) from goods) order by price desc;

--查询每种类型中最贵的电脑信息  
select * from (select cate_name,max(price) as max_price from goods group by cate_name) as g_new left join goods as g on g_new.cate_name=g.cate_name and g_new.max_price=g.price;

--上面的要求 如果最贵的电脑有两款 就会显示两种  显然不符合我们的要求

在这里插入图片描述

--改进
select * from (select cate_name,max(price) as max_price from goods group by cate_name) as g_new left join goods as g on g_new.cate_name=g.cate_name and g_new.max_price=g.price order by g_new.cate_name;

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值