MySQL インデックス タイプについて: PRIMARY、UNIQUE、INDEX、および FULLTEXT
MySQL には、データベースのパフォーマンスを向上させるいくつかのインデックス タイプが用意されています。この記事では、一般的に使用される 4 つのインデックス (PRIMARY、UNIQUE、INDEX、および FULLTEXT) の主な違いについて説明します。
PRIMARY インデックス
UNIQUE インデックスと同様に、PRIMARY インデックスはすべてのインデックスの一意性を保証します。インデックス内の行。ただし、次のような独自の特性があります。
- テーブルごとに PRIMARY インデックスは 1 つだけです。
- 通常、これは「PRIMARY」という名前が付けられ、行を識別する主な手段を提供します。
- 行を一意に定義する列の数は最小限にする必要があります。
- 一部のデータベース システムでは、 PRIMARY インデックスの B ツリー構造内のテーブル データ。
UNIQUE インデックス
UNIQUE インデックスは、指定された列内の行の一意性を強制します。
- 複数の行で同一の非 NULL 値を防止します。
- NULL 値を許可し、NULL を持つ複数の行が同一になる可能性があります。
- 可能重複レコードを防止することによるデータ制限に使用されます。
INDEX (非一意)
基本的な INDEX または KEY タイプは、非一意のインデックスを参照します。
- インデックス内の非固有の値を許可します。
- データ制約は強制されません。
- データのアクセスと取得を高速化するためにのみ使用されます。
全文インデックス
以前のタイプとは異なり、FULLTEXT インデックスは全文検索機能に特化しています。
- 文字列などの列の全文コンテンツのインデックスを作成します。
- MATCH() / AGAINST() 句を使用した効率的な検索が容易になります。
- には従いません他のインデックス タイプと同じ列順序付けルール。
類似点
相違点にもかかわらず、これらのインデックス タイプはすべて次の特性を共有します。
- できる複数の列が含まれています。
- 列の順序がクエリ条件と一致するように、左端から開始する必要があります。列。
以上がMySQL の PRIMARY、UNIQUE、INDEX、および FULLTEXT インデックスの主な違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。