mysql:5784
From: "MIYATSU Kazunari" <"MIYATSU Kazunari" <mid@xxxxxxxxxx>>
Date: Thu, 11 Jul 2002 17:33:32 +0900
Subject: [mysql 05784] Re: 電話番号の検索
うーん。そうだよねー。再利用できないもんなー。 と、件数を水増しして(262154件)つらつらとEXPLAINを使ってIndexの使用状況を見な がら、打っていると mysql> insert into address set telephone='1211-7874-2122'; Query OK, 1 row affected (0.00 sec) mysql> select * from address where replace(telephone,'-','')='121178742122'; 6 rows in set (0.47 sec) mysql> insert into address set telephone='1211-7874-2122'; Query OK, 1 row affected (0.00 sec) mysql> select * from address where telephone like '1%2%1%1%7%8%7%4%2%1%2%2'; 7 rows in set (0.38 sec) mysql> insert into address set telephone='1211-7874-2122'; Query OK, 1 row affected (0.00 sec) mysql> select * from address where telephone='1211-7874-2122'; 8 rows in set (0.01 sec) 一番最後のIndexをフル利用できるケースは当たり前として、likeの方がreplaceより はマシってのは意外でした。 ---MySQLマニュアル--- >MySQL はどのようにインデックスを使用するか? >MySQL は、もし LIKE がワイルドカードから始まっていなくて、ある種固定さ >れた文字で始まっているなら、 LIKE の評価にインデックスを使用します。 ---------------------------------------------------------- これかな。いや勉強になりました。応用できそうな案件が幾つか浮かんできました。
5779 2002-07-11 15:02 [ebihara <ebiharaml@x] 電話番号の検索 5780 2002-07-11 15:31 ┣[遠藤 俊裕 <endo_t@xx] 5781 2002-07-11 15:34 ┣["Yuya.Nishida." <yuy] 5782 2002-07-11 15:41 ┗["MIYATSU Kazunari" <] 5783 2002-07-11 16:03 ┗[大杉眞規 <osugi@xxx] -> 5784 2002-07-11 17:33 ┣["MIYATSU Kazunari" <] 5792 2002-07-12 13:27 ┗[ebihara <ebiharaml@x]