sqlserver 去重后再count统计
时间: 2023-08-11 11:05:32 浏览: 476
sqlserver数据库常用语句基本涵盖日常所需,带中文解释说明
在 SQL Server 中,如果您想要对某个列进行去重后再统计行数,可以使用以下 SQL 语句:
```
SELECT COUNT(*) FROM (SELECT DISTINCT column_name FROM table_name) AS temp_table;
```
其中,column_name 是要去重的列名,table_name 是要统计的表名。这条 SQL 语句会先对 column_name 列进行去重操作,然后再统计去重后的行数。
注意,我们使用了一个子查询(AS temp_table),这是因为在 SQL Server 中,COUNT 函数只能对单个列进行统计,而不能对多个列进行统计。因此,我们需要先使用子查询将去重后的列作为一个临时表,再对临时表进行统计。
如果您需要对多个列进行去重后再统计行数,可以在子查询中使用多个列名进行去重,例如:
```
SELECT COUNT(*) FROM (SELECT DISTINCT column_name1, column_name2 FROM table_name) AS temp_table;
```
这条 SQL 语句会先对 column_name1 和 column_name2 列进行去重操作,然后再统计去重后的行数。
阅读全文