[前][次][番号順一覧][スレッド一覧]

mysql:15712

From: HIRATSUKA Sadao <HIRATSUKA Sadao <hiratsuka.sadao@xxxxxxxxxx>>
Date: Thu, 29 Mar 2012 20:25:33 +0900
Subject: [mysql 15712] Re: Left Join句を付けたUPDATE処理時間が非常に長くかかって

こんばんは、平塚です。
割り込みすいません。

On Thu, 29 Mar 2012 17:58:50 +0900
"ochiai" <s.ochiai@xxxxxxxxxx> wrote:

> select_type table     type  possible_keys key     key_len ref     rows Extra
> SIMPLE     table-a  ALL  NULL           NULL  NULL   NULL 20万
> SIMPLE     table-b  index NULL           Kb      63       NULL 14万 
> Usingindex

こちらでそれっぽいテストケースを作って取得したEXPLAINが以下です。

+-+------+--+-------+-------+-------+----+--------------+------+
|d|select|ta|type   |possibl|key    |key_|ref           |rows  |
+-+------+--+-------+-------+-------+----+--------------+------+
|1|SIMPLE|ta|ALL    |NULL   |NULL   |NULL|NULL          |250791|
|1|SIMPLE|tb|eq_ref |PRIMARY|PRIMARY|4   |scott.ta.tb_id|     1|
+-+------+--+-------+-------+-------+----+--------------+------+

table-bに対するアクセスは、indexではなくeq_refになるのが理想です。

ochiaiさんのケースでは20万+20万×14万=280億レコードの評価が行われます。
私のケースでは25万+25万×1=50万です。

table-bのKbカラムにUNIQUE KEYがあるとのことですが、
Kbカラムが登場するのは複合キーの第2カラム以降だったりしないでしょうか。

あるいは、KaとKbのデータ型が異なっていたりしないでしょうか。

SHOW CREATE TABLE table-a\G
SHOW CREATE TABLE table-b\G

を見せていただけると、何か分かるかもしれません。
よろしくお願いいたします。

-- 
平塚貞夫 hiratsuka.sadao@xxxxxxxxxx



[前][次][番号順一覧][スレッド一覧]

     15703 2012-03-29 15:08 ["ochiai" <s.ochiai@x] Left Join句を付けたUPDATE処理時間が非常に長くかかって
     15705 2012-03-29 16:56 ┣[中川 貴 <takashi.nak]                                       
     15706 2012-03-29 17:01 ┗[中川 貴 <takashi.nak]                                       
     15707 2012-03-29 17:12  ┗[中川 貴 <takashi.nak]                                     
     15708 2012-03-29 17:42   ┗["ochiai" <s.ochiai@x]                                   
     15709 2012-03-29 17:46    ┣[中川 貴 <takashi.nak]                                 
     15711 2012-03-29 17:58    ┃┗["ochiai" <s.ochiai@x]                               
->   15712 2012-03-29 20:25    ┃ ┣[HIRATSUKA Sadao <hir]                             
     15713 2012-03-30 01:27    ┃ ┗[中川貴 <nora1962@xxx]                             
     15727 2012-04-11 17:03    ┃  ┗["ochiai" <s.ochiai@x] Re: Left Join句を付けたUPDATE処理時間が非常に長くかかって(長文)
     15728 2012-04-11 18:24    ┃   ┗[中川 貴 <takashi.nak]                         
     15729 2012-04-12 09:46    ┃    ┗[HIRATSUKA Sadao <hir]                       
     15730 2012-04-13 10:32    ┃     ┗["ochiai" <s.ochiai@x] Re: Left Join句を付けたUPDATE処理時間が非常に長くかかって(解決御礼)
     15733 2012-04-13 11:13    ┃      ┗[HIRATSUKA Sadao <hir]                   
     15710 2012-03-29 17:47    ┗[Masaaki Matsuyama <m]