当前位置: 首页 > 面试题库 >

计数Mysql表中的重复记录?

盖晋
2023-03-14
问题内容

我有桌子,下面的结构。

tbl

id   name  
1    AAA
2    BBB
3    BBB
4    BBB
5    AAA
6    CCC

select count(name) c from tbl
group by name having c >1

查询返回以下结果:

AAA(2)  duplicate
BBB(3)  duplicate
CCC(1)  not duplicate

与AAA和BBB重复的名称。我想要的最终结果是此重复记录的计数。

结果应该是这样的:共有重复产品( 2


问题答案:

该方法是使用一个嵌套查询,每个重复项有一行,而一个外部查询仅返回内部查询结果的计数。

SELECT count(*) AS duplicate_count
FROM (
 SELECT name FROM tbl
 GROUP BY name HAVING COUNT(name) > 1
) AS t


 类似资料:
  • 我已经尝试了很多不同的例子,但我不能使它工作。代码有问题,我总是以 我从那个问题中得到了启发,就这样做了: 我的表:user_groups 我想要的是数字2,因为用户是组NR1的一部分,这是会话组ID。 当我只在SQL中执行查询时:

  • 表名称包含一列 目标是计算重复次数以得到以下结果 如何做到这一点?

  • 问题内容: 我有这样的桌子 而且我需要创建一个查询,该查询将像这样通过电子邮件计算所有重复项 问题答案: last()子句将选择范围限制为大于1的电子邮件计数,例如重复项。

  • 问题内容: 我有一张叫的桌子。 它包含名为和的字段。现在,我想从表中删除所有包含表中已经包含的名字和姓氏的记录。 我使用mysql数据库,并且是表中的主键。 问题答案: 删除之后,将删除所有重复项,并为您提供最新的CustomerID 虽然有警告提示。我不知道您的用例,但是完全可以让两个人使用完全相同的名字(我们甚至一次都具有相同的地址)。

  • 本文向大家介绍计算一个MySQL查询中特定记录(重复)的出现次数,包括了计算一个MySQL查询中特定记录(重复)的出现次数的使用技巧和注意事项,需要的朋友参考一下 为此,请使用合计函数和GROUP BY对这些特定记录进行分组。让我们首先创建一个表- 使用插入命令在表中插入一些记录- 使用select语句显示表中的所有记录- 这将产生以下输出- 以下是对一个MySQL查询中特定记录(重复)的出现进行

  • 问题内容: 有没有一种方法可以获取MySQL数据库中所有表的行数而不在每个表上运行? 问题答案: 不过请从文档中注意:对于InnoDB表, 行数只是 SQL优化中使用 的粗略估计 。您需要使用COUNT(*)进行精确计数(这更昂贵)。