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;
相关推荐
cooldream200934 分钟前
数据库模型全解析:从文档存储到搜索引擎
数据库·人工智能·搜索引擎·知识图谱
傻啦嘿哟2 小时前
用Python实现简单的任务自动化
网络·数据库·python
想要入门的程序猿7 小时前
Qt菜单栏、工具栏、状态栏(右键)
开发语言·数据库·qt
键盘上的蚂蚁-8 小时前
Python 语言结合 Flask 框架来实现一个基础的代购商品管理
jvm·数据库·oracle
代码欢乐豆8 小时前
MongoDB的部署和操作
数据库·mongodb
<e^πi+1=0>8 小时前
使用Locust对MongoDB进行负载测试
数据库·mongodb
圆蛤镇程序猿8 小时前
【什么是MVCC?】
java·数据库·oracle
开心邮递员8 小时前
sql server: split 函数;cross apply操作符
数据库·sql
老大白菜8 小时前
PostgreSQL 内置函数
数据库·postgresql
Damon撇嘴笑8 小时前
Cause: java.sql.SQLException: sql injection violation, comment not allow异常问题处理
java·数据库·sql