Это несколько сложно, но может подойти. Бес твой стол.
SELECT DISTINCT a.[Referral ID], b.CountOfADate, c.CountOfATeam, d.CountOfService, e.CountOfSTeam
FROM (((imp AS a
INNER JOIN
(SELECT b1.[Referral ID], Count(b1.ADate) AS CountOfADate
FROM (SELECT DISTINCT t.[Referral ID], t.[Assessment Date] As ADate FROM imp As t) AS b1
GROUP BY b1.[Referral ID]) AS b
ON a.[Referral ID] = b.[Referral ID])
INNER JOIN
(SELECT c1.[Referral ID], Count(c1.ATeam) AS CountOfATeam
FROM (SELECT DISTINCT t.[Referral ID], t.[Assessment Team] As ATeam FROM imp As t) AS c1
GROUP BY c1.[Referral ID]) AS c
ON a.[Referral ID] = c.[Referral ID])
INNER JOIN
(SELECT d1.[Referral ID], Count(d1.Service) AS CountOfService
FROM (SELECT DISTINCT t.[Referral ID], t.[Service Provided] As Service FROM imp As t) AS d1
GROUP BY d1.[Referral ID]) AS d
ON a.[Referral ID] = d.[Referral ID])
INNER JOIN
(SELECT e1.[Referral ID], Count(e1.STeam) AS CountOfSTeam
FROM (SELECT DISTINCT t.[Referral ID], t.[Service Team] As STeam FROM imp As t) AS e1
GROUP BY e1.[Referral ID]) AS e
ON a.[Referral ID] = e.[Referral ID];