【Mysql】——mysqlのいくつかのインデックス
Mysqlインデックスの作成はMysqlの効率的な実行時に重要であり、インデックスはmysqlの検索速度を大幅に向上させることができる.インデックスは、単列インデックスと組合せインデックスに分けられます.≪単一列索引|Single Column Index|oem_src≫:1つの索引には単一の列のみが含まれ、1つの表には複数の単一列索引を含めることができますが、これは組合せ索引ではありません.≪コンポジット・インデックス|Composite Index|oem_src≫:1つのインデックスに複数の列が含まれます.
インデックスを作成するときは、sqlクエリ文に適用される条件(一般的にWhere句の条件)であることを確認する必要があります.実際には、インデックスもプライマリ・キーとインデックス・フィールドを保存し、エンティティ・テーブルのレコードを指すテーブルです.
インデックスの作成は検索速度を速めますが、インデックスの使用が多すぎると乱用されます.したがって、インデックスはクエリの速度を大幅に向上させるとともに、テーブルの更新速度を低下させるという欠点もあります.テーブルinsert、update、deleteなどです.テーブルを更新する場合、mysqlはデータだけでなくインデックスファイルも保存します.インデックスを作成すると、ディスク領域も消費されます.
一般索引
これは最も基本的なインデックスで、制限はありません.
インデックスを作成するときは、sqlクエリ文に適用される条件(一般的にWhere句の条件)であることを確認する必要があります.実際には、インデックスもプライマリ・キーとインデックス・フィールドを保存し、エンティティ・テーブルのレコードを指すテーブルです.
インデックスの作成は検索速度を速めますが、インデックスの使用が多すぎると乱用されます.したがって、インデックスはクエリの速度を大幅に向上させるとともに、テーブルの更新速度を低下させるという欠点もあります.テーブルinsert、update、deleteなどです.テーブルを更新する場合、mysqlはデータだけでなくインデックスファイルも保存します.インデックスを作成すると、ディスク領域も消費されます.
一般索引
これは最も基本的なインデックスで、制限はありません.
/*
*
*/
CREATE INDEX indexName ON mytable(username(length));
/*
* (
*/
ALTER table tableName ADD INDEX indexName(columnName)
/*
*
*/
CREATE TABLE mytable(
ID INT NOT NULL,
username VARCHAR(16) NOT NULL,
INDEX [indexName] (username(length))
);
/*
*
*/
DROP INDEX [indexName] ON mytable;