首頁  >  文章  >  資料庫  >  mysql怎麼判斷索引是否存在

mysql怎麼判斷索引是否存在

WBOY
WBOY原創
2022-05-26 17:31:527192瀏覽

在mysql中,可以利用SHOW INDEX語句來判斷索引是否存在,語句可以查看表中建立的索引,若索引存在則結果會顯示出來,語法為「SHOW INDEX FROM 表名 FROM 資料庫名」。

mysql怎麼判斷索引是否存在

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

mysql怎麼判斷索引是否存在

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

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

SHOW INDEX FROM <表名> [ FROM <数据库名>]

語法說明如下:

#:指定需要查看索引的資料表名。

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

範例

使用 SHOW INDEX 語句查看《MySQL建立索引》一節中 tb_stu_info2 資料表的索引訊息,SQL 語句和運行結果如下所示。

mysql怎麼判斷索引是否存在

擴充知識:

其中各主要參數說明如下:

  • ##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 顯示評註。

推薦學習:

mysql影片教學

以上是mysql怎麼判斷索引是否存在的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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