MySQL(六)MySQL 案例

1. MySQL 案例

1.1. 设计数据库

  1、首先根据相关业务需求(主要参考输出输入条件)规划出表的基本结构

  2、根据业务规则进行状态字段设计

  3、预估相关表的数据量进行容量规划

  4、确定主键

  5、根据对相关处理语句的分析对数据结构进行相应的变更。

  设计表的时候每个表的功能要独立,优点:结构清晰,操作数据库的时候提高性能

1.2. 实现数据库

  (1)新建user表

  (2)新建order表

  (3)新建product表

  (4)新建category表

1.3. 操作数据库

1.3.1. 插入记录

复制代码
insert into 表名(列名1,列名2,列名3......) values (值1,值2,值3......)



1.3.2. 修改表记录

复制代码
update 表名 set 字段名=值,字段名=值,字段名=值...... where 条件

1.3.3. 删除表记录

复制代码
delete from 表名 where id=4;


1.3.4. 查询操作语法

复制代码
select [distinct]*| 列名,列名 from 表名 [where条件]

  (1)查询所有商品

复制代码
select * from category;

  (2)查询商品名和商品价格

复制代码
SELECT product_name,product_price FROM product;

  (3)查询商品名,使用列别名

复制代码
select product_name as "商品名称" from product;

  (4)去掉重复值(按照价格)

复制代码
select distinct(product_price) from product;

  (5)将所有的商品的价格+10进行显示

复制代码
select product_name, product_price+10 from product ;

1.3.5. 条件查询

  (1)查询商品名称为"华为pura70"的商品信息

复制代码
select * from product where product_name='华为pura70';

  (2)查询商品名称含有"pura"字的商品信息(模糊查询)

复制代码
select * from product where product_name like '%pura%';

  (3)查询商品id在(1,3)范围内的所有商品信息

复制代码
select * from product where product_id in (1,3);

  (4)查询商品名称含有"pura"字并且id为2的商品信息

复制代码
select * from product where product_name like '%pura%'and product_id=2;

  (5)查询id为1或者3的商品信息

复制代码
select * from product where product_id=1 or product_id=3;

1.3.67 排序

  (1)查询所有的商品,按价格进行排序(升序、降序)

复制代码
select * from product order by product_price asc;
select * from product order by product_price desc;

  (2)查询名称査"pura"的商品信息并且按照价格降序排序

复制代码
select * from product where product_name like '%pura%' order by product_price desc;

1.3.6. 聚合函数

  (1)获得所有商品的价格的总和

复制代码
select sum(product_price) from product;

  (2)获得所有商品的平均价格

复制代码
select avg(product_price) from product;

  (3)获得所有商品的个数

复制代码
select count(product_name) from product;

1.3.7. 分组操作

  (1)根据category_id字段分组

复制代码
select category_id,count(*) from product group by category_id;

  (2)根据category_id分组,分组统计每组商品的平均价格,并且平均价格大于200元

复制代码
select category_id,avg(product_price) from product group by category_id having avg(product_price)>200;
相关推荐
小白男神2 天前
MySQL进阶学习四(存储过程、游标、触发器)
mysql
这个DBA有点耶2 天前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
DBA_G2 天前
从地面到云霄:GBase数据库在民航三大场景的落地实践
数据库
自由能燃气设备2 天前
商用全预混低氮冷凝锅炉免费方案vs付费方案对比+选型避坑指南
大数据·数据库·人工智能
科创致远2 天前
科创致远 ESOP 系统核心效能与实战价值展示
大数据·数据库·人工智能·精益工程
kybs19912 天前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net
2601_962218612 天前
万象生鲜系统称重自动多退少补算法解决生鲜非标品痛点
大数据·数据库·人工智能·python·算法
程序猿_极客2 天前
【免费】分享一套优质的基于SSM的校园失物招领系统的设计与实现,源码+文档+视频详解(讲解)
java·mysql·ssm·课程设计·失物招领系统
张洛闻Eren2 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
于平安2 天前
MySQL-触发器
数据库·mysql