CREATE PROCEDURE My_gsp @like_groupname NVARCHAR(255) = NULL AS --exec my_gsp '%Adv%' WITH get_stuff_perms(id,parentfolderid,name,displayname,cachepath,groupname) AS (SELECT fc.id, fc.parentfolderid, fc.name, fc.displayname, fc.cachepath, a.groupname FROM dbo.cxml_foldercontent fc LEFT JOIN dbo.cxml_permissions p ON fc.permissionsid = p.id LEFT JOIN dbo.cxml_aclentry a ON p.id = a.permissionsid WHERE a.groupname LIKE @like_groupname UNION ALL SELECT rfc.id, rfc.parentfolderid, rfc.name, rfc.displayname, rfc.cachepath, gsp.groupname FROM dbo.cxml_foldercontent rfc INNER JOIN get_stuff_perms gsp ON rfc.parentfolderid = gsp.id) SELECT * FROM get_stuff_perms RETURN (0) GO