• This is what I have tried but this won't handle multiple levels. Is this the recursion rabbit hole?

    DECLARE @GroupCode varchar(20)

    SET @GroupCode = 'A'

    SELECT DISTINCT

    Member

    FROM

    (

    SELECT

    Member

    FROM Groups G

    INNER JOIN GroupMembers GM

    ON G.GroupCode = GM.GroupCode

    WHERE

    MemberType = 'Individual' AND

    G.GroupCode = @GroupCode

    UNION

    SELECT

    Member

    FROM GroupMembers

    WHERE

    GroupCode IN

    (

    SELECT

    Member

    FROM GroupMembers

    WHERE

    MemberType = 'Group' AND

    GroupCode = @GroupCode

    )

    ) dataset