首頁  >  文章  >  資料庫  >  mysql索引的查詢語句是什麼

mysql索引的查詢語句是什麼

青灯夜游
青灯夜游原創
2022-06-20 10:44:368218瀏覽

mysql索引的查詢語句是“SHOW INDEX”,可以傳回與目​​前資料庫或指定資料庫中的資料表關聯的索引信息,完整語法“SHOW INDEX FROM 表名[FROM 資料庫名稱];”;其中,「FROM 資料庫名稱」選項是可選的,省略則傳回目前資料庫中資料表關聯的索引訊息,若不省略則傳回指定資料庫中資料表的索引資訊。

mysql索引的查詢語句是什麼

本教學操作環境:windows7系統、mysql8版本、Dell G3電腦。

索引建立完成後,可以利用 SQL 語句查看已經存在的索引。在 MySQL 中,可以使用 SHOW INDEX 語句來檢視表格中所建立的索引。

MySQL SHOW INDEX 語句

#SHOW INDEX 語句可以傳回與目​​前資料庫或指定資料庫中的資料表關聯的索引資訊。

查看索引的語法格式如下:

SHOW INDEX FROM 表名 [ FROM 数据库名];

語法說明如下:

  • 表名:指定需要查看索引的數據表名。

  • 資料庫名稱:指定需要查看索引的資料表所在的資料庫,可省略。例如,SHOW INDEX FROM student FROM test; 語句表示查看 test 資料庫中 student 資料表的索引。

    如果未連接到任何資料庫,或者要獲取其他資料庫中表的索引信息,則可以指定資料庫名稱。

將SHOW INDEXES傳回下列資訊:

                參數                 說明
                Table                 表示建立索引的資料表名,這裡是 tb_stu_info2 資料表。
                Non_unique                 表示該索引是否為唯一索引。若不是唯一索引,則該列的值為 1;若是唯一索引,則該列的值為 0。
                Key_name                 表示索引的名稱。
                Seq_in_index                 表示該列在索引中的位置,如果索引是單列的,則該列的值為 1;如果索引是組合索引,則該列的值為每列在索引定義中的順序。
                Column_name                 表示定義索引的欄位。
                Collat​​ion                 表示列以何種順序儲存在索引中。在 MySQL 中,升序顯示值「A」(升序),若顯示為 NULL,則表示無分類。
                Cardinality                 索引中唯一值數的估計值。基數根據被儲存為整數的統計資料計數,所以即使對於小型表,該值也沒有必要是精確的。基數越大,當進行聯合時,MySQL 使用該索引的機會就越大。
                Sub_part                 表示列中被編入索引的字元的數量。若列只是部分被編入索引,則該列的值為被編入索引的字元的數目;若整列被編入索引,則該列的值為 NULL。
                Packed                 指示關鍵字如何被壓縮。若沒有被壓縮,值為 NULL。
                Null                 用於顯示索引列中是否包含 NULL。若列含有 NULL,則該列的值為 YES。若沒有,則該列的值為 NO。
                Index_type                 顯示索引使用的類型和方法(BTREE、FULLTEXT、HASH、RTREE)。
                Comment                 顯示評註。

过滤索引信息

要过滤索引信息,请使用以下WHERE子句:

SHOW INDEXES FROM table_name
WHERE condition;

MySQL的SHOW INDEXES例子

我们将创建一个新表名为contacts演示SHOW INDEXES命令:

CREATE TABLE contacts(
    contact_id int AUTO_INCREMENT,
    first_name VARCHAR(100) NOT NULL,
    last_name VARCHAR(100) NOT NULL,
    email VARCHAR(100),
    phone VARCHAR(20),
    PRIMARY KEY(contact_id),
    UNIQUE(email),
    INDEX phone(phone),
    INDEX name(first_name,last_name) comment '按名字和姓氏'
);

mysql索引的查詢語句是什麼

以下命令返回表中的所有索引信息contacts:

SHOW INDEXES FROM contacts;

mysql索引的查詢語句是什麼

【相关推荐:mysql视频教程

以上是mysql索引的查詢語句是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn