Hi,
I have a table with user ids and names.
Another table describes some rights of those users and still another one
describes who inherits rights from who.
A function all_rights ( user_id ) calculates all rights of a user
recursively and gives back a table with all userright_ids this user
directly has or inherits of other users as ( user_id, userright_id ).
Now I'd like to find all users who have the right 42.
select user_id, user_name
from users join all_rights ( user_id ) using ( user_id )
where userright_id = 42;
won't work because the parameter user_id for the function all_rights()
is unknown when the function gets called.
Is there a way to do this?