迭代mysql查询速度变慢
我做了一组快速查询,将其分解为另一个字段中的迭代mysql查询速度变慢,mysql,performance,Mysql,Performance,我做了一组快速查询,将其分解为另一个字段中的2013年1月27日。只需连续做12次,更改每个月要编写的月份,就更容易了。我注意到,每个后续的查询都会花费更长的时间 第一: update hondaacura set transdate1 = concat_ws('-',substr(trxdate,6,4),'01', left(trxdate,2)) where substr(trxdate,3,3) = 'JAN'; 更新总共350万条记录的表大小需要6.27分钟 接下来运
2013年1月27日
。只需连续做12次,更改每个月要编写的月份,就更容易了。我注意到,每个后续的查询都会花费更长的时间
第一:
update
hondaacura
set transdate1 = concat_ws('-',substr(trxdate,6,4),'01', left(trxdate,2))
where substr(trxdate,3,3) = 'JAN';
更新总共350万条记录的表大小需要6.27分钟
接下来运行的2月份声明的得分为6.9,以此类推,直到12月份才达到12.3
为什么每次后续查询都会减慢速度?我想您可以用这个update语句来解决这个问题。然后,您不需要编写12条语句并在一行中执行它们
update
hondaacura
set transdate1 = STR_TO_DATE(trxdate, '%d%b%Y');
欲了解更多信息,请参阅。我不明白您所说的“只需连续做12次就可以更轻松地更改每个月要写入的月份。”?每个月的记录数量大致相同?如果数字不同,这可能就是问题所在。您是否在每次运行后提交?也许巨大的交易正在拖你的后腿。。