我有一个带有两列的 sql 日志表,如下所示:
RegistrantID compnayID
1 1
1 1
2 1
3 1
1 2
2 2
2 2
3 2
我正在使用以下查询来获取唯一RegistrantID
的 s
SELECT 'Number of unique Profile views' AS Data,
4 AS Action,
COUNT(DISTINCT RegistrantID) AS Counts
FROM dbo.hr_ActionLog
WHERE Action = 4
AND (@DateFrom IS NULL OR dbo.DateOnly(ActionDate) >= dbo.DateOnly(@DateFrom))
AND (@DateTo IS NULL OR dbo.DateOnly(ActionDate) <= dbo.DateOnly(@DateTo))
AND (@CompanyID IS NULL OR CompanyID = @CompanyID)
AND (@RegistrantID IS NULL OR RegistrantID = @RegistrantID)
AND (@VacancyID IS NULL OR VacancyID = @VacancyID)
但是现在我想RegistrantId
按公司获得唯一的 s ,这样如果 aregistrantid
代表两个不同的公司,那么它将被添加两次,但如果 a 不止一次companyid
,那么它将被添加一次。以上数据计数应为 6。我需要使用 group by 吗?
请建议