2016-02-10 33 views
0

我可以运行该SQL成功地:计数(不同(列))

select count(distinct(BusinessEntityID)) from Person.Person 

但是如果我想知道这个,给我的错误:

select count(distinct(*)) from Person.Person 

我怎样才能运行equliviant SQL ?

+0

有什么错误? – Robert

回答

4

您可以使用这样的查询表来获得不同的记录数:

select count(*) from (select distinct * from Person.Person) as T 

在内部选择您检索重复的记录,并在外层一个你得到的计数。

-1

请直接使用count(*)例如:

select count(*) from Person.Person 
+0

例如,表中没有主键。表中有重复的行。计数功能的输出是什么? – Mustafa

+0

在这种情况下,您使用DISTINCT(column_name)代替(*) – javidrathod