/ * 通常の状況下では、パーセント記号インデックスは、後に使用することができる* /
SELECT ニックネームから T ニックネームなど「DBA%」/ * 指数の前にパーセント記号を使用することができない、SQLを書き換え溶液、逆インデックスを追加します* / 作成インデックス idx_t1_name ON T1(リバース(名))
SELECT名 から T1 WHERE リバース(名)のようなリバース(' %のADCは' );
/ * パーセント前と後の両方で、これは一般的には、インデックスを使用しません。* / / * 1.検索条件の文字列は、機能を最適化するためのケーブルでSUBSTRインデックス機能を作成し、「ABC%」の例のように使用するように、作成することができ、固定位置の開始文字列に常にあります。
* /
作成 インデックス idx_substr_t1_name ON T1(SUBSTR(名前、5、10 ));
SELECT ID、名前を、name_type から T1 のsubstr(名前、5。 、10)のような' ABC%' ;
/ * 2.検索条件の文字は常に文字列の末尾の固定位置は、組み合わせインデックスが逆+ SUBSTR組み合わせ指数関数を作成し、機能を最適化するために作成し、次に「ABC%が」のような逆を使用することができ、発生* / 作成インデックス idx_t1_reverse_nameをON T1(リバース(SUBSTR(名前、1、長さ(名前)- 4。 ))); SELECT
ID、名前、name_type から T1 リバース(SUBSTR(名前、。1、長さ(名)- 4))のようなリバース(' %ABC ' )/ * 3.固定位置検索文字列が最初の共通の確立、最適化、表示されません。インデックス列書き換えSQL * / 作成したインデックス idx_t1_name ON T1(名)SELECT ID、名前、name_type から T1 の名前では、(SELECT名前から T1をWHERE名前のような' %% ABC ')