day07-2MySQL索引( 二 )

  • 刪除索引
    DROP INDEX id_name ON table_name;alter table table_name drop index index_name;
  • 刪除主鍵索引
    ALTER TABLE table_name DROP PRIMARY KEY;
  • 查詢索引(三種方式)
    show index(es) from table_name;show keys from table_name;desc table_name;
  • 例子
    -- 演示mysql索引的使用-- 創建索引CREATE TABLE t25( id INT, `name` VARCHAR(32));-- 1.查詢表是否有索引SHOW INDEXES FROM t25;-- 2.添加索引-- 2.1添加唯一索引CREATE UNIQUE INDEX id_index ON t25 (id);-- 2.2添加普通索引CREATE INDEX name_index ON t25 (`name`);-- 如何選擇?-- 如果某列的值不會重復,則優先考慮使用unique索引,否則使用普通索引-- 添加普通索引方式2ALTER TABLE t25 ADD INDEX id_index (id);-- 2.3添加主鍵索引CREATE TABLE t26( id INT, `name` VARCHAR(32));ALTER TABLE t26 ADD PRIMARY KEY(id);SHOW INDEXES FROM t26;-- 刪除索引DROP INDEX id_index ON t25;DROP INDEX name_index ON t25;-- 刪除主鍵索引ALTER TABLE t26 DROP PRIMARY KEY;-- 修改索引:先刪除,再添加新的索引-- 查詢索引-- 方式1SHOW INDEX FROM t25;-- 方式2SHOW INDEXES FROM t25;-- 方式3SHOW KEYS FROM t25;-- 方式4DESC t25;
    • 練習

    day07-2MySQL索引

    文章插圖
    day07-2MySQL索引

    文章插圖
    day07-2MySQL索引

    文章插圖
    3.小結那些列上適合使用索引?
    1. 較頻繁地作為查詢條件的字段應該創建索引
    2. 唯一性太差的字段不適合單獨創建索引
    3. 更新非常頻繁的字段不適合創建索引
    4. 不會出現在where子句中的字段不該創建索引

    推薦閱讀