对sql列中的重复值进行计数
我想要一个查询来计算列中的重复值,是否有任何关于此的查询,或者我认为是对sql列中的重复值进行计数,sql,oracle,Sql,Oracle,我想要一个查询来计算列中的重复值,是否有任何关于此的查询,或者我认为是 total records=SELECT COUNT(column_name) FROM table_name; distinct records=SELECT COUNT(DISTINCT column_name) FROM table_name; duplicate count=total records-distinct records; 差不多,是的。您可以在单个查询中执行此操作: SELECT (SELECT C
total records=SELECT COUNT(column_name) FROM table_name;
distinct records=SELECT COUNT(DISTINCT column_name) FROM table_name;
duplicate count=total records-distinct records;
差不多,是的。您可以在单个查询中执行此操作:
SELECT (SELECT COUNT(col) FROM tbl) - (SELECT COUNT(DISTINCT col) FROM tbl);
编辑:按节点显示名称显示好的点。至少在MySQL中是这样,我不保证跨引擎兼容性,我上一次在Oracle上工作是15年前的事,在SQL Server上也从来没有过,是的。您可以在单个查询中执行此操作:
SELECT (SELECT COUNT(col) FROM tbl) - (SELECT COUNT(DISTINCT col) FROM tbl);
编辑:按节点显示名称显示好的点。这至少在MySQL中是有效的,我不保证跨引擎兼容性,我上一次在Oracle上工作是在15年前,在SQL Server上从来没有过。看看您的SQL,可以简化为:
SELECT Count(Column) - Count(DISTINCT Column)
FROM yourTable
看看您的sql,它可以简化如下:
SELECT Count(Column) - Count(DISTINCT Column)
FROM yourTable
您可以尝试以下方法:
SELECT COUNT(column_name) as count
FROM table_name
GROUP BY column_name
HAVING count > 1
您可以尝试以下方法:
SELECT COUNT(column_name) as count
FROM table_name
GROUP BY column_name
HAVING count > 1
选择一个数据库请不要标记所有可用的数据库选择一个数据库请不要标记所有可用的数据库这非常有效。。。我还有一个疑问,不同的计数和唯一的计数是相同的还是有任何区别。检查这个问题:这是完美的。。。我还有一个疑问,不同计数和唯一计数是相同的还是有任何区别。检查这个问题: