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

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]