インデックスとキー

Download mysql eBook

構文

  • - 単純なインデックスを作成する

    CREATE INDEX index_name ON table_namecolumn_name1 [、 column_name2 、...])

  • - ユニークなインデックスを作成する

    table_nameでUNIQUE INDEXをindex_nameのを CREATE(column_name1 [、column_name2、...]

  • - ドロップインデックス

    DROP INDEX index_name ON tbl_name [ アルゴリズム _オプション | lock_option ] ...

    algorithm_option:アルゴリズム [=] {DEFAULT | INPLACE | COPY}

    lock_option: LOCK [=] {DEFAULT | NONE | SHARED | EXCLUSIVE}

備考

コンセプト

MySQLテーブルのインデックスはブックのインデックスのように機能します。

たとえば、データベースに関する書籍があり、ストレージなどの情報を探したいとします。索引がなければ(目次のような他の援助がないと仮定して)、トピックを見つけられるまで(それは「全表スキャン」)、ページを1つずつ調べなければなりません。一方、索引にはキーワードのリストがあるので、索引を参照して、その記憶域が113-120,231、および354ページに記載されていることを確認します。次に、検索せずに直接それらのページに移動できますインデックス付きの検索、やや速い)。

もちろん、インデックスの有用性は多くの事柄に依存します - いくつかの例では、上のsimileを使用します:

  • あなたがデータベースに関する本を持っていて、 "データベース"という言葉を索引付けしている場合は、1-59ページ、61-290ページ、および292-400ページに記載されていることがあります。それは多くのページであり、そのような場合、インデックスはそれほど役立つものではなく、ページを順番に調べるほうが速いかもしれません。 (データベースでは、これは「選択性の悪さ」です。)
  • 10ページの本については、5ページのインデックスがプレフィックスされた10ページの書籍で終わる可能性があるため、インデックスを作成するのは意味がありません。ちょうど愚かです。10ページをスキャンして完了します。
  • また、インデックスは有用である必要があります。たとえば、ページあたりの文字数「L」の頻度など、一般的にインデックスを作成する必要はありません。

関連する例

Stats

158 Contributors: 7
Thursday, August 4, 2016
ライセンスを受けた: CC-BY-SA

所属していない Stack Overflow
Rip Tutorial: info@zzzprojects.com

eBookをダウンロード