>>select my.Person, my.Program, sql.ProgramCount from myTable inner join ( >>SELECT PersonID, COUNT(DISTINCT Program) AS ProgramCount >>FROM dbo.tmmLicesnses2Persons >>WHERE (DateActivated IS NOT NULL) AND (DateDeactivated IS NULL) >>GROUP BY PersonID) sql on my.Person = sql.Person where >>(my.DateActivated IS NOT NULL) AND (my.DateDeactivated IS NULL) group by 1,2,3 >>>