mysql怎么查询重复 mysql如何查询重复的数据

如何检查mysql的重复索引

在一个生产库上,没有创建索引,是不可思议的,当然你的索引创建的太多了、冗余了,更是不可思议的。恰当的索引能够提高你的数据库性能,反之则提高维护成本,下面就介绍一款工具,来分析你的mysql库的索引是不是有冗余,pt-duplicate-key-checker,它能从mysql表中找出重复的索引和外键,这个工具会将重复的索引和外键都列出来,并生成删除重复索引的语句,非常方便。工具详细介绍请参考

公司主营业务:网站设计、网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出桓仁免费做网站回馈大家。

官文:

直接上实例:

[root@localhost bin]# ./pt-duplicate-key-checker -h192.168.2.88

-unigel -p123456  -dnigel

#

########################################################################

#

nigel.a1

#

########################################################################

# dx_cd is a left-prefix of dx_cd_b

# Key definitions:

#   KEY `dx_cd` (`cd`)

#   KEY `dx_cd_b`

(`cd`,`b`),

# Column types:

#

`cd` varchar(50) default null

#

`b` varchar(100) default null

# To remove this duplicate index, execute:

ALTER TABLE `nigel`.`a1` DROP INDEX `dx_cd`;

#

########################################################################

#

nigel.students

#

########################################################################

# dx_n is a left-prefix of dx_n_s

# Key definitions:

#   KEY `dx_n` (`name`),

#   KEY `dx_n_s`

(`name`,`score`),

# Column types:

#

`name` varchar(25) default null

#

`score` int(5) unsigned not null

# To remove this duplicate index, execute:

ALTER TABLE `nigel`.`students` DROP INDEX `dx_n`;

#

########################################################################

# Summary of

indexes

#

########################################################################

# Size Duplicate Indexes

1348

# Total Duplicate Indexes  2

# Total

Indexes

8

[root@localhost bin]#

mysql查询两个字段下重复数据的删除方法

select * from credit

where project_credit_id in (

select max(project_credit_id) as project_credit_id from credit group by person_id,project_id having count(*)1

)

这个是查询语句前提是project_credit_id是主键,你核对一下没有问题的话,就把

select *改为delete就可以了

mysql查询语句,多字段去除重复的问题

select *, count(distinct name) from table group by name

这个 你想去除那些重复 就直接在 distinct 后面 后group by 后面加 就可以了


文章名称:mysql怎么查询重复 mysql如何查询重复的数据
转载注明:http://azwzsj.com/article/doejiec.html