MySQLのインデックスの種類と分類

まず、インデックス法
FULLTEXT、HASH、BTREE、RTREE:MySQLの存在は、いくつかのインデックス・タイプがあります 。

1. FULLTEXTは
、フルテキストインデックス、専用MyISAMエンジンのサポートです。これは、INDEXの使用をCREATE、ALTER TABLEを、CREATE TABLEをすることができますが、今だけCHAR、VARCHAR、TEXT列のフルテキストインデックスを作成することができます。

MyISAMテーブルとフルテキストインデックスが一緒に生まれていない、「%の単語%」問題名LIKEのテキストのあいまい検索のこのタイプの低効率を解決するために表示されます。

HASH 2.
ソール(ほぼ100%のソール)等HASHキーと値のペアとしては、それが指標として適しています。

HASHインデックスは、層によって層としてtreeインデックスのように見える必要があり、そのため非常に高い効率を持っていない、1を見つけることができます。しかし、この効率は、「=」との問い合わせの範囲のための効果的な条件の下で、発注と組み合わせ指数は依然として非効率的である「で」、つまり、条件付きです。

BTREE 3.
BTREEインデックスがツリーデータ構造(二分木)に、特定のアルゴリズムによってインデックス値の一種であり、各クエリは、ノードを横切る葉を得るためには、ツリーの入口ルートで始まります。これは、デフォルトで、インデックスの最も一般的なタイプでMySQLの。

RTREE 4.
めったにMySQLの中で使用されていないRTREEは、唯一のジオメトリデータ型をサポートし、ストレージエンジンのタイプはMyISAMのみをサポートし、BDB、InnoDBは、NDbの、アーカイブ数。

BTREEと比較して、RTREE強度が検索範囲にあります

 

第二に、インデックスタイプ
平野インデックス:クエリのみをスピードアップ

唯一のインデックス:+ユニークなクエリ列値をスピードアップ(ヌルがあるかもしれません)

主キーインデックス:ユニークなクエリをスピードアップする値+列(ヌルを持っていない)だけ1台+

複合インデックス:組成の複数列のインデックス値は、具体的にはコンビナトリアル探索のために、効率が組み合わされたインデックスよりも大きいです

フルテキストインデックス:テキスト単語分割の内容、検索

PS。複合インデックス、別個のインデックス検索の複数の組み合わせ

インデックスを覆う、インデックスカバーを構築するために、他の言葉で、データラインを読み出すことなく、インデックスのみからクエリ列を取得することができるデータの列を選択

おすすめ

転載: www.cnblogs.com/tkzc2013/p/11453459.html