数据库在执行sql语句时,如果出现速度慢的情况,就要仔细检查一下你的语句。如果是常规语句,你可以想一下执行逻辑。其中可能拖慢速度的原因。
近期遇到的问题是update语句执行速度太慢,算了一下,50万条数据,大约需要49个小时才能执行完。
在执行update语句时,发现在更新语句时需要进行条件判断,其实这个时候就可以知道时间主要被浪费在条件判断这一块。检查了一下原表,发现原表并没有设置主键,这会导致每一次判断都要遍历全表,所以执行速度自然就慢了下来。
添加主键后速度很快就起来了。
后续的语句执行也是,如果清楚底层原理,对于判断所出现问题的原理排查会很有帮助。