0

私はこれを壊すために一連の簡単なクエリを実行しました: 27JAN20132013-01-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でした。

後続のクエリごとに速度が低下するのはなぜですか?

4

1 に答える 1

0

この更新ステートメントでこれを解決できると思います。そうすれば、12 個のステートメントを記述して、それらを連続して実行する必要がなくなります。

update 
   hondaacura 
set transdate1 = STR_TO_DATE(trxdate, '%d%b%Y');

詳細については、こちらを参照してください。

于 2013-01-30T14:59:39.843 に答える