MySQL数据库强化

三范式

第一范式:关系型数据库的基本要求,不满足第一范式不是关系型数据库;表中每一列都是不可能分割的原子列,同一列不能存储多个值

第二范式:要求每一列或每一行必须可以被唯一区分(主键)

第三范式:要求表中不能包含已存在其他表中的非主键字段信息

定义多表的好处:简化指定表的设计

                           一定程度上提高了数据查询的效率

进行多表联查,一定给不同的表定义别名,通过别名.列名,显示表中指定列

进行多表联查时,一定建立表与表之间的关联字段;因此关联字段的个数是n-1,其中n表示表的个数

多表联查编写SQL的规则

明确数据来源哪些表,编写FROM语句,并给指定的表定义别名

明确需要查询的列,编写SELECET语句,通过指定表别名.列名定义

定义表与表之间的关联条件(WHERE)

分类

内连接查询

1.显示内连接查询--推荐使用:将关联的表定义在JOIN语句中,并且将关联的字段定义在ON语句中

2.隐式内连接:将表与表之间的关联字定义在WHERE语句中

外连接查询

左外连接查询:在FORW语句中定义主要查询的表

右外连接查询:在JOIN语句中的定义主要查询的表

分组查询

COUNT:统计条数

SUM:求和操作

AVG:平均值

MAX:列的最大值

MIN:列的最小值

对NULL值进行忽略处理,因此一般配合IFNULL(列名,替换值)使用

使用分组查询。查询结果会按照分组字段进行升序排序

实际开发中并不是所有查询都需要分组所以使用ORDER BY

GROUP BY是先分组在查询

过滤查询

HAVING 分组过滤条件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值