mysql 刪除重複索引 去掉mysql重複的索引

2021-10-17 16:03:37 字數 776 閱讀 4040

create table t (

id int not null primary key,

a  int not null,

index(id)

)engine=innodb;

乙個經驗不足的使用者可能是想建立乙個主鍵,然後再加上索引以供查詢使用。事實上主鍵也就是索引了。所以完全沒必要再新增index(id)了。

(可以指定整個庫,也可以指定單個表)

[root@node1 ~]# pt-duplicate-key-checker  --host=121.41.80.171 --user= --password=  --databases=test --tables=t

# test.t

# id is a duplicate of primary

# key definitions:

#   key `id` (`id`)

#   primary key (`id`),

# column types:

#         `id` int(11) not null

# to remove this duplicate index, execute:

alter table `test`.`t` drop index `id`;

# summary of indexes

# size duplicate indexes   4

# total duplicate indexes  1

# total indexes            2

mysql刪除索引

刪除索引可以使用alter table或drop index語句來實現。drop index可以在alter table內部作為一條語句處理,其格式如下 drop index index name on table name alter table table name drop index ind...

MySQL刪除重複行

網上有些做法是這樣的 delete from table name where id not in select min id from select min id as min id from table name group by duplicate column b 發現這樣在本地跑是可行的,...

MySQL之去重(DISTINCT去掉重複資料)

在使用 mysql select 語句查詢資料的時候返回的是所有匹配的行。例如,查詢 tb students info 表中所有 age 的執行結果如下所示。可以看到查詢結果返回了 10 條記錄,其中有一些重複的 age 值,有時出於對資料分析的要求,需要消除重複的記錄值。這時候就需要用到 dist...