ホームページ >データベース >mysql チュートリアル >mysql はどのフィールドにインデックスを付ける必要がありますか?
mysql でインデックスを作成する必要があるフィールド: 1. Where 句によく現れるフィールド、特に大きなテーブルのフィールドにはインデックスを作成する必要があります; 2. 他のテーブルに頻繁に接続されるテーブルにはインデックスを作成する必要があります。接続フィールド インデックスはフィールドに作成する必要があります; 3. インデックスはグループ化フィールドまたは並べ替えフィールドに作成する必要があります; 4. インデックスは選択性の高いフィールドに作成する必要があります。
#1. テーブル内の特定のフィールドの分散値が高いほど、そのフィールドはインデックスのキーワードとして選択されるのに適しています。主キー フィールドと一意制約フィールドは、これらのフィールドの値が非常に離散的であるため、インデックス キーとしての選択に適しています。 MySQL は、主キー制約と一意制約を処理する際に考慮されています。データベース ユーザーが主キー制約を作成すると、MySQL は自動的にプライマリ インデックス (プライマリ インデックス) を作成し、インデックス名は Primary になります。データベース ユーザーが一意のインデックスを作成すると、MySQL は自動的に一意のインデックス (一意のインデックス) を作成します。デフォルトでは、 、インデックス名は一意のインデックスのフィールド名です。
2. 使用する記憶域スペースが少ないフィールドは、インデックスのキーワードとして選択するのに適しています。たとえば、整数フィールドは文字列よりも占有する記憶領域が少ないため、インデックス キーとしてより適しています。
3. 固定記憶域を持つフィールドは、インデックス作成のキーワードとして選択するのに適しています。テキスト型フィールドと比較して、文字型フィールドはインデックスキーとして選択するのに適しています。
4. Where 句で頻繁に使用するフィールドに対してインデックスを作成する必要があり、フィールドのグループ化または並べ替えに対してインデックスを作成する必要があり、2 つのテーブルの結合フィールドに対してインデックスを作成する必要があります。
5. 頻繁に更新されるフィールドはインデックスの作成には適しておらず、where 句に現れないフィールドにはインデックスを作成しないでください。
6. 他のテーブルに頻繁に接続されるテーブルには、接続フィールドにインデックスが必要です;
7. インデックスは選択性の高いフィールドに構築される必要があります;
8. インデックス小さなフィールドにインデックスを構築する必要があります。大きなテキスト フィールドや長いフィールドにもインデックスを構築しないでください。
以上がmysql はどのフィールドにインデックスを付ける必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。