Complex query help please

Поиск
Список
Период
Сортировка
От Glenn MacGregor
Тема Complex query help please
Дата
Msg-id 020c01c17792$2176f820$4d00a8c0@catamount
обсуждение исходный текст
Ответы Re: Complex query help please  ("Josh Berkus" <josh@agliodbs.com>)
Список pgsql-sql
Hi All,
 
I am new to sql and have the need for a complex query.  I have figured out how to do it in two queries but I would like to get it down to one.  I will give you my queries and hopefully some can give me some assistance.
Thanks
 
Query 1:
create temp table ttable1 as select xpressuser.username, xpressvimpermission.commandaccess, xpressvimpermission.eventaccess from xpressvim left join xpressvimpermission using (vimid) left join xpressgroup using (groupid) left join xpressuser using (groupid) where xpressvim.vimname = 'testvim2';
 
creates a temp table.
 
Query 2:
select * from ttable1 union select xpressuser.username, xpressgroup.commandaccess,  xpressgroup.eventaccess from xpressgroup left join xpressuser using (groupid) where xpressuser.username not in (select username from ttable1) and (xpressgroup.commandaccess != 'n' or  xpressgroup.eventaccess != 'f');
 
So the idea is I have a default set of permissions that users get, these permissions can be overridden on each vim for each group(user).  The first query results in a table which has all the overridden permissions.
The second query results in a table which has all the default permissions unioned with the previous table and not in the previous table.
 
Is there any way to do this one query or a function?
 
    Thanks
 
            Glenn

В списке pgsql-sql по дате отправления:

Предыдущее
От: "Aasmund Midttun Godal"
Дата:
Сообщение: Re: PL/pgSQL examples NOT involving functions
Следующее
От: "Josh Berkus"
Дата:
Сообщение: Re: PL/pgSQL examples NOT involving functions