来自多个数据库中多个列的SQL Distict计数

来自多个数据库中多个列的SQL Distict计数,sql,count,distinct,Sql,Count,Distinct,这就是我到目前为止所做的: SELECT p2.fullname[UploadedBy], p.fullname[UploadedTo] from docexchange d (NOLOCK) left join exchange_permissions r on r.file_id = d.id inner join people p on r.people_id = p.id inner join people p2 on d.upload_by_id = p2.id where upl

这就是我到目前为止所做的:

SELECT p2.fullname[UploadedBy], p.fullname[UploadedTo]
from docexchange d (NOLOCK)

left join exchange_permissions r on r.file_id = d.id
inner join people p on r.people_id = p.id
inner join people p2 on d.upload_by_id = p2.id

where upload_date > '2013-05-21'
这个查询返回大约8000个结果——如果我将
DISTINCT
添加到我的
SELECT
语句中,它将返回大约900个结果——我想得到这900个结果,但我需要另一列来告诉我这些结果在数据库中显示了多少次

我试过这样做:

Select p2.fullname, p.fullname, COUNT(DISTINCT p2.fullname + p.fullname)

但这会返回一个错误:“people.fullname”列在选择列表中无效,因为它既不包含在聚合函数中,也不包含在GROUP BY子句中。

是否需要
GROUP BY

SELECT p2.fullname as [UploadedBy], p.fullname as [UploadedTo], count(*)
from docexchange d (NOLOCK)

left join exchange_permissions r on r.file_id = d.id
inner join people p on r.people_id = p.id
inner join people p2 on d.upload_by_id = p2.id

where upload_date > '2013-05-21'
group by p2.fullname, p.fullname
太棒了,谢谢——9分钟后我才能接受这个答案。完全是SQL的新手。再次感谢!