create or replace procedure cnav_all_groups_in_group ( p_group_id_list OUT long, p_group_id IN number ) IS v_groupid number; cursor c_groupid is select gm.member_group_id from group_member gm,grouping g where gm.group_id = p_group_id and gm.group_id=g.group_id; BEGIN if (p_group_id is null) then p_group_id_list := null; return; end if; p_group_id_list := null; open c_groupid; loop fetch c_groupid into v_groupid; exit when c_groupid%NOTFOUND; if (p_group_id_list is null) then p_group_id_list := to_char(v_groupid); else p_group_id_list := p_group_id_list || ',' || to_char(v_groupid); end if; end loop; END cnav_all_groups_in_group; / show errors;