mysql:15351
From: とみたまさひろ <とみたまさひろ <tommy@xxxxxxxxxx>>
Date: Mon, 28 Jun 2010 23:35:39 +0900
Subject: [mysql 15351] Re: 検索条件カラムを縦持ちにした場合の検索の性能について。
とみたです。 On Mon, 28 Jun 2010 21:38:23 +0900 MATSUNAGA Ichiro <vikke.bsd@xxxxxxxxxx> wrote: > この状態で、他のtable(other)をjoinしつつ、cond1(001)が10あるいは20、かつcond2(002)が70あるいは80あるいは90の条件を見たすrecordが欲しい場合、 > select a_id, o.val > from > a > inner join cond c1 using(a_id) > inner join cond c2 using(a_id) > inner join other o using(o_id) > where > c1.cond between 00110 and 00120 > and c2.cond between 00270 and 00290; > というsqlを実行してみたのですが、結構重い状態です。 次のように cond カラムに独立したインデックスを張ってみてはいかがでしょうか。 create table cond ( a_id int(10) not null, cond int(5) not null, primary key (a_id, cond), index (cond) ) -- とみたまさひろ <tommy@xxxxxxxxxx> 日本MySQLユーザ会 http://www.mysql.gr.jp
@ 15349 2010-06-28 21:38 [MATSUNAGA Ichiro <vi] 検索条件カラムを縦持ちにした場合の検索の性能について。 @ 15350 2010-06-28 21:44 ┣[MATSUNAGA Ichiro <vi] -> 15351 2010-06-28 23:35 ┗[とみたまさひろ <tomm] 15357 2010-07-01 15:57 ┗[Mikiya Okuno <mikiya]