数据库的三大范式
1. 第一范式(1NF)
原子性:保持每一列不可再分
例如:
2. 第二范式(2NF)
前提:满足第一范式
每张表只能描述一件事情
3. 第三范式(3NF)
前提:满足第一范式和第二范式
第三范式:需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关
上表中,所有属性都完全依赖于学号,所以满足第二范式,但是“班主任性别”和“班主任年龄”直接依赖的是“班主任姓名”,
而不是主键“学号”,所以需做如下调整:
4. 总结
阿里规范:关联查询的表不得超过三张
- 考虑商业化的需求和目标,数据库的性能更加重要
- 故意给某些表增加一些冗余的字段(从多表查询直接变成单表查询)
- 故意增加一些计算列(select count – > 直接设置一个计算列统计总的count【从大数据量降低为小数据量的查询】【索引】)
打赏