Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE OR REPLACE FUNCTION
- eMembers(_groupName text) returns TABLE (person INTEGER)
- AS $$
- DECLARE
- _personNum INTEGER := 0;
- _childNames text;
- BEGIN
- FOR _personNum IN SELECT * FROM eMembersGetIds(_groupName)
- LOOP
- RETURN next _personNum;
- END LOOP;
- FOR _childNames IN SELECT e.name
- FROM eGroups parent, eGroups e
- WHERE parent = _groupName AND e.parent = parent.id
- LOOP
- RETURN query SELECT * FROM eMembers(_childNames);
- END LOOP;
- END;
- $$ language plpgsql stable;
- CREATE OR REPLACE FUNCTION
- eMembersGetIds(_groupName text) returns TABLE (person INTEGER)
- AS $$
- DECLARE
- _personNum INTEGER := 0;
- BEGIN
- FOR _personNum IN SELECT p.unswid
- FROM People p, eGroupMembers em, eGroups e
- WHERE e.name = _groupname AND em.person = p.id AND em.egroup = e.id
- LOOP
- RETURN next _personNum;
- END;
- $$ language plpgsql stable;
Add Comment
Please, Sign In to add comment