1. 程式人生 > 其它 >Mysql:建立索引和刪除索引

Mysql:建立索引和刪除索引

建立索引的方式

  1. 建立表時,建立索引
  2. 在已存在的表,建立索引

建立表新增索引

新增普通索引、唯一索引、主鍵索引、聯合索引、全文索引

CREATE TABLE `kuajing_oms`.`cc_bill_lading`  (
  `id` bigint(19) NOT NULL COMMENT 'id' PRIMARY KEY AUTO_INCREMENT,//建立主鍵索引
  `bl_code` varchar(70) NULL COMMENT '提單號',
  `create_time` datetime NULL COMMENT '建立時間',
  `create_by` varchar(30) NULL COMMENT '建立人',
  `update_time` datetime NULL COMMENT '更新時間',
  `update_by` varchar(30) NULL COMMENT '更新人',
  //建立普通索引,索引名(索引列)
  INDEX idx_bcode(bl_code),
  //唯一索引
  UNIQUE INDEX un_idx_cby(create_by),
  //聯合索引,最常用的欄位放1個,順序是不能亂來的
  INDEX idx_bcode(bl_code,create_by,create_time),
  //建立全文索引,比較少用。主要用於資料型別為大文字並且頻繁模糊查詢時建立;update_by(20)表示對值的前20個字元建立索引,如果不指定,欄位資料型別長度就多長
  FULLTEXT INDEX idx_uby(update_by(20))
);

全文索引注意點

如果欄位使用了全文索引,在進行模糊查詢時就不要用like了,用如下:

已存在表新增索引

索引名(索引列)

普通索引

CREATE INDEX idx_cmt ON book(commit);

唯一索引

CREATE UNIQUE INDEX idx_bname ON book(book_name);

聯合索引

CREATE INDEX idx_bid_bname_info ON book(book_id,book_name,info);

刪除索引

DROP INDEX 索引名 ON 表名;
例子:

DROP INDEX idx_bname ON book;