SELECT {Source}.[Description], Count (distinct{Action}.[IdAction]), {Status}.[Description] , concat({Status}.[Description], ': ', Count (distinct{Action}.[IdAction])), Count(distinct Action2.[IdAction]) FROM {Action} Inner JOIN {Status} ON {Action}.[Status] = {Status}.[IdStatus] Inner JOIN {Source} ON {Action}.[Source] = {Source}.[IdSource] Inner JOIN {Action} as Action2 ON Action2.[Source] = {Source}.[IdSource] where {Status}.[Is_Active] = 1 GROUP BY {Action}.[Status], {Status}.[Description], {Action}.[Source], {Source}.[Description], {Status}.[Order] ORDER BY Count(distinct Action2.[IdAction]) DESC, {Status}.[Order] asc