mysql与pyhton交互一:数据准备和sql语句练习

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_40667484/article/details/87690362

创建一个数据库
创建一个数据表
SQL语句再次使用巩固

创建数据库

创建一个京东数据库

create database jing_dong charset=utf8;

如图
在这里插入图片描述


创建数据表

创建一个名为goods的数据表

create table goods(
id int unsigned primary key auto_increment not null,
name varchar(255) not null,
cate_name varchar(255) not null,
brand_name varchar(255) not null,
price decimal(10,3) not null default 0,
is_show bit not null default 1,
is_saleoff bit not null default 0
);

插入数据

insert into goods values(0,'r510vc 15.6英寸笔记本','笔记本','华硕',3399.000,1,0),

1 r510vc 15.6英寸笔记本 笔记本 华硕 3399.000 1 0
2 y400n 14.0英寸笔记本电脑 笔记本 联想 4999.000 1 0
3 g140th 15.6英寸游戏本 游戏本 雷神 8499.000 1 0
4 x550cc 15.6英寸笔记本 笔记本 华硕 2799.000 1 0
5 x240 超极本 超极本 联想 4880.000 1 0
6 u330p 13.3英寸超极本 超极本 联想 4299.000 1 0
7 svp13226scb 触控超极本 超极本 索尼 7999.000 1 0
8 ipad mini 7.9英寸平板电脑 平板电脑 苹果 1998.000 1 0
10 ipad mini 配备 retina 显示屏 平板电脑 苹果 3388.000 1 0
9 ipad mini 9.7英寸平板电脑 平板电脑 苹果 2788.000 1 0
11 ideacentre c340 20英寸一体电脑 台式机 联想 3499.000 1 0
12 vostro 3800-r1206 台式电脑 台式机 戴尔 2899.000 1 0
13 imac me086ch/a 21.5英寸一体电脑 台式机 苹果 9188.000 1 0
14 imac me086ch/a 21.5英寸一体电脑 台式机 苹果 9188.000 1 0


SQL语句再次使用巩固

实现下列给你的操作

1.查询类型cate_name为’超极本’的商品名称、价格
2.显示商品的种类
3.求所有电脑产品的平均价格,并且保留两位小数
4.查询每种类型的商品种==最贵,最便宜,平均价,数量
5.查询所有价格大于平均价格的商品,并且按价格降序排序
6.查询每种类型中最贵的电脑信息

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

select name,price from goods where cate_name='超极本'; 

2.显示商品的种类

select cate_name from goods;

3.求所有电脑产品的平均价格,并且保留两位小数(聚合函数)

select round(avg(price),2) from goods;

如图
在这里插入图片描述


4.查询每种类型的商品种最贵,最便宜,平均价,数量(聚合函数)

select cate_name,max(price),min(price),avg(price),count(cate_name) from goods group by cate_name;

如图
在这里插入图片描述


5.查询所有价格大于平均价格的商品,并且按价格降序排序(子查询,排序)
select * from goods where price>(select avg(price) from goods) order by price desc;

如图
在这里插入图片描述


6.查询每种类型中最贵的电脑信息(链接查询,涉及多个表,活用as)
方法:
先写出固定格式

select * from a inner join b on xxx;

再把a,b,xxx,替换成两个表和条件。
a就是select cate_name,max(price) as price from goods group by cate_name;
b就是select * from goods;
xxx就是条件a.cate_name=b.cate_name and a.price=b.price;

select * from (select cate_name,max(price) as price from goods group by cate_name) as a inner join (select * from goods) as b on a.cate_name=b.cate_name and a.price=b.price;

猜你喜欢

转载自blog.csdn.net/qq_40667484/article/details/87690362
今日推荐