数据库执行速度慢原因及解决方案

news/2024/7/9 20:31:20 标签: mysql, postgresql

数据库在执行sql语句时,如果出现速度慢的情况,就要仔细检查一下你的语句。如果是常规语句,你可以想一下执行逻辑。其中可能拖慢速度的原因。

近期遇到的问题是update语句执行速度太慢,算了一下,50万条数据,大约需要49个小时才能执行完。

在执行update语句时,发现在更新语句时需要进行条件判断,其实这个时候就可以知道时间主要被浪费在条件判断这一块。检查了一下原表,发现原表并没有设置主键,这会导致每一次判断都要遍历全表,所以执行速度自然就慢了下来。

添加主键后速度很快就起来了。

后续的语句执行也是,如果清楚底层原理,对于判断所出现问题的原理排查会很有帮助。


http://www.niftyadmin.cn/n/811066.html

相关文章

pg数据库中更改字段为自增主键

在Pg数据库中设置自增主键,需要先添加序列。 在navcat中查看序列,需要在点击其他,然后找到序列中去查找。 如果没有,那么就需要手动建立,结构如下: create sequence schema(模式名).table_name increme…

python学习资料

资源概述 Python作为现在比较流行的程序设计语言,学习的人也越来越多,我也是其中的一员。在学习的过程中,收集了一部分资源,这里分享一些不错的电子书。同时用公众号记录自己的学习过程,欢迎关注,一起学习。…

正则表达式中常见问题汇总

正则表达式常见问题汇总: 一、将常规的筛选规则写好后发现只匹配到一部分数据,剩下的数据匹配不到,原因大多是由于换行导致的(在匹配的时候会按行进行匹配的,因为我们写的规则.中默认是没有\n的,所以到换行…

数据库中去重

数据库中如何去重: 方案其实就是把不重复的值先取出来,新建至中间表,然后再把中间表返回到原表中 数据库中去重,需要分五步走 一、找出重复值清单,利用distinct或group by 的方式将重复值清单取出 二、将没有重复值的…

数据库中快速更改同库下多张表中具有相同字段的数据类型

数据库中快速更改同库下多张表中具有相同字段的数据类型: 分四步走: 一、利用系统表,快速找到含有指定字段的表清单 select table_name from information_schema.column where table_schema 指定数据库 and column_name 指定字段名 二、清单…

数据库中新建表后用select语句查找不到表

数据库中新建表后用select语句查找不到表: 目前来说,如果表在数据库中显示是有的,但是使用语法查不出来,原因如下: 在建表的时候,给表添加了双引号,导致数据库在处理的时候,把双引…

Pg数据库中更改自增字段起始值

我们在使用数据库的时候,会遇到原表中设置的是字段值自增,但是有一些数据迁移或者删减后,发现有一些空缺,这个时候,自增值就会从原来的最大值的下一位开始。 如何使其值重新从指定的数据开始自增呢? alte…

正则表达式补充

正则表达式补充: 前段时间写了关于正则表达式要不要实现从关键字开始向两边出发进行筛选,原来觉得没有必要,并且解决方案是通过多次筛选来实现最终要筛选的值,现在有了新的解决方案: 比如在文本中有多个“&#xff0…