我正在使用SSMS 2008,我需要使用子查询来返回唯一记录/客户端的计数。我该怎么做呢?目前,我正在返回整个数据集中的所有唯一记录,而不是每个客户端。这里是我的伪代码:tsql不同计数子查询
SELECT A.Program, A.PEOPLE_ID, K.EVENT_NAME, A.Program2, A.Program3
(SELECT COUNT(DISTINCT K.EVENT_NAME)
FROM #TEMP1 A, evolv_cs.dbo.facility_view F, evolv_cs.dbo.people_x N, event_view K WITH (NOLOCK)
WHERE F.group_profile_id = A.group_profile_id AND
K.event_definition_id = a.event_definition_id AND
A.people_id = N.people_id
GROUP BY K.EVENT_NAME) as DistinctEvent
FROM #TEMP1 A
JOIN event_view K WITH (NOLOCK) on K.event_definition_id = A.event_definition_id
WHERE @START_DATE BETWEEN A.Enrolled_Date AND DATEADD(D, 14, A.Enrolled_Date)
AND (@SERVICE IS NULL OR @SERVICE = K.event_name)
GROUP BY
A.Program, A.PEOPLE_ID, K.EVENT_NAME, A.Program2, A.Program3
好的,我现在编辑了上面的查询。我仍然希望每个客户端的event_name。
为了确保我明白,在此查询中,您希望输出与A.Program,A.PEOPLE_ID,A.Program2和A.Program3的每个不同组合对应的不同EVENT_NAME值的计数? –