Dalam mysql, kata kunci indeks boleh digunakan untuk mencipta indeks, sintaks "CREATE INDEX index name ON table name (column name)"; ia boleh digunakan untuk melihat indeks, sintaks "SHOW INDEX FROM table name"; ia juga boleh digunakan Untuk mengubah suai indeks, sintaksnya ialah "DROP INDEX index name ON table name".
Persekitaran pengendalian tutorial ini: sistem windows7, versi mysql8, komputer Dell G3.
Dalam mysql, indeks merujuk kepada indeks, iaitu struktur pangkalan data khas yang terdiri daripada satu atau lebih lajur dalam jadual data .
Kata kunci indeks boleh digunakan untuk membuat indeks, melihat indeks atau mengubah suai indeks.
kata kunci indeks mencipta indeks
Anda boleh menggunakan pernyataan CREATE INDEX khusus untuk mencipta indeks untuk mencipta indeks pada jadual sedia ada, tetapi pernyataan ini tidak boleh mencipta primer kunci .
CREATE INDEX 索引名 ON 表名 (列名 [长度] [ASC|DESC])
ASC|DESC: Pilihan. ASC menentukan bahawa indeks diisih dalam tertib menaik, DESC menentukan bahawa indeks diisih dalam tertib menurun, dan lalainya ialah ASC.
Sebagai contoh, untuk menambah indeks baharu bagi lajur c4, gunakan pernyataan berikut:
CREATE INDEX idx_c4 ON t(c4);
Secara lalai, jika jenis indeks tidak dinyatakan, MySQL akan mencipta indeks B -Tree.
indeks paparan kata kunci indeks
SHOW INDEX FROM 表名 [FROM 数据库名]
Sintaks adalah seperti berikut:
Contoh:
mysql> SHOW INDEX FROM tb_stu_info2\G *************************** 1. row *************************** Table: tb_stu_info2 Non_unique: 0 Key_name: height Seq_in_index: 1 Column_name: height Collation: A Cardinality: 0 Sub_part: NULL Packed: NULL Null: YES Index_type: BTREE Comment: Index_comment: 1 row in set (0.03 sec)
Parameter utama diterangkan seperti berikut:
参数 | 说明 |
---|---|
Table | 表示创建索引的数据表名,这里是 tb_stu_info2 数据表。 |
Non_unique | 表示该索引是否是唯一索引。若不是唯一索引,则该列的值为 1;若是唯一索引,则该列的值为 0。 |
Key_name | 表示索引的名称。 |
Seq_in_index | 表示该列在索引中的位置,如果索引是单列的,则该列的值为 1;如果索引是组合索引,则该列的值为每列在索引定义中的顺序。 |
Column_name | 表示定义索引的列字段。 |
Collation | 表示列以何种顺序存储在索引中。在 MySQL 中,升序显示值“A”(升序),若显示为 NULL,则表示无分类。 |
Cardinality | 索引中唯一值数目的估计值。基数根据被存储为整数的统计数据计数,所以即使对于小型表,该值也没有必要是精确的。基数越大,当进行联合时,MySQL 使用该索引的机会就越大。 |
Sub_part | 表示列中被编入索引的字符的数量。若列只是部分被编入索引,则该列的值为被编入索引的字符的数目;若整列被编入索引,则该列的值为 NULL。 |
Packed | 指示关键字如何被压缩。若没有被压缩,值为 NULL。 |
Null | 用于显示索引列中是否包含 NULL。若列含有 NULL,该列的值为 YES。若没有,则该列的值为 NO。 |
Index_type | 显示索引使用的类型和方法(BTREE、FULLTEXT、HASH、RTREE)。 |
Comment | 显示评注。 |
index关键字修改索引
DROP INDEX <索引名> ON <表名>
语法说明如下:
<索引名>:要删除的索引名。
<表名>:指定该索引所在的表名。
说明:
在 MySQL 中修改索引可以通过删除原索引,再根据需要创建一个同名的索引,从而实现修改索引的操作。
【相关推荐:mysql视频教程】
Atas ialah kandungan terperinci Apakah kegunaan kata kunci indeks mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!