![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 84
九转成圣
少年易老学难成,一寸光阴不可轻。未觉池塘春草梦,阶前梧叶已秋声。
展开
-
mysql中的排名
本文详细介绍了在MySQL 5.7和MySQL 8.0中实现排名的方法。MySQL 5.7通过自连接和聚合函数实现排名,而MySQL 8.0通过窗口函数简化了这一过程。对于需要实现复杂排名的情况,MySQL 8.0的窗口函数提供了更强大的功能和更高的效率。MySQL 5.7需要复杂的自连接和聚合函数。SQL语句较长,易读性较差。性能相对较低。MySQL 8.0窗口函数简化了排名实现。SQL语句简洁,易读性好。性能优越,特别是对于大数据量的操作。原创 2024-03-25 08:40:13 · 1591 阅读 · 0 评论 -
探索MySQL SELECT子查询:深入理解与优化技巧
生成了一个临时表,然后再执行主表和临时表的连表查询(临时表的意思是啥?比如dept表有很多列,同时又很多行,其中还有一大部分不满足d.deptno = e,deptno这个条件,此时临时表相对于对大表做了一个精简)到这里对于select子查询的执行顺序更迷惑了,不知道DEPENDENT SUBQUERY到底时怎么执行的,到底有没有生产临时表,但是可以明确这种子查询的效率不如join好。通过执行计划可以看出,先执行的是DEPENDENT SUBQUERY这部分(id大的优先执行),也就是。原创 2024-05-16 17:23:37 · 1178 阅读 · 0 评论 -
MySQL中的批量更新实战
本文详细介绍了MySQL中几种常用的批量更新方法,包括和,并结合实例进行说明。不同方法有各自的优点和适用场景,在实际应用中,需根据具体需求选择合适的方法,并结合优化手段,确保批量更新操作的高效和可靠。原创 2024-05-08 17:10:58 · 897 阅读 · 0 评论 -
Windows安装mysql5.7.29
不修改会报ERROR 1133 (42000): Can’t find any matching row in the user table。my.ini不是utf-8格式会报错,或者是utf-8格式但是打开之后格式变了。计算机》右键属性》高级系统设置》环境变量》系统变量》Path》编辑》新增。首次登录无需密码,Enter password 处直接回车即可。注意修改basedir=和datadir=原创 2024-03-15 08:25:44 · 1633 阅读 · 0 评论 -
数据库设计优化:深入理解范式理论
数据库范式是设计优化的核心,旨在消除数据冗余和减少增删改异常。本文从基础概念入手,逐步介绍第一范式(1NF)到第五范式(5NF),并深入解析每种范式的要求和实现方法。1NF确保列的原子性,2NF消除非主属性对主属性的部分依赖,3NF进一步消除传递依赖。BCNF强化了3NF,确保所有函数依赖中的左边一定是候选键。4NF解决多值依赖问题,而5NF则确保每个非主属性完全依赖于所有候选键。通过这些范式的应用,可以显著提升数据库的规范性和一致性,为高效的数据管理奠定坚实基础。原创 2024-03-12 07:59:07 · 1590 阅读 · 0 评论 -
子查询与连表查询
可以看出连表查询被优化器优化成了dept表关联empt表。子查询需要多次扫子表,总共扫1+n。一般认为连表查询效率比子查询高。连表查询两个表各扫一次。原创 2024-03-08 08:00:17 · 1532 阅读 · 0 评论 -
数据库中on条件与where条件的区别
执行on子句(e.deptno = d.deptno and e.is_deleted = 0)left join 会把左表中有on过滤后的临时表中没有的添加进来,右表用null填充。right会把右表中有on过滤后的临时表中没有的添加进来,左表用null填充。right join 回填被on过滤掉的右表的数据,左表用null填充。left join 回填被on过滤掉的左表数据,右表用null填充。执行on子句(e.deptno = d.deptno)执行join子句回填数据。原创 2024-03-07 09:07:41 · 2317 阅读 · 0 评论