三大范式
https://www.cnblogs.com/wsg25/p/9615100.html
为什么需要数据规范化
- 信息重复
- 更新异常
- 插入异常
- 无法正常显示信息
- 删除异常
- 丢失有效信息
三大范式
第一范式(1NF)
- 原子性:保证每一列不可再分
第二范式(2NF)
- 前提:满足第一范式
- 每一列数据都和主键相关,而不能只与主键的某一部分相关,每张表只描述一件事情
第三范式(3NF)
- 前提:满足第一范式和第二范式
- 需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关
规范性和性能的问题
阿里规范:关联查询的表不得超过3张
- 考虑商业化的需求和目标,(成本、用户体验) 数据库的性能更重要
- 在规范性能的问题的时候,需要适当的考虑一下规范性
- 故意给某些表增加一些冗余的字段(从多表查询变为单表查询)
- 故意增加一些计算列(大数据量降为小数据量,每增加一条记录计算列的值+1)