Re: How Do You Do a Three Way Join?

Поиск
Список
Период
Сортировка
От Stephan Szabo
Тема Re: How Do You Do a Three Way Join?
Дата
Msg-id 20070522092729.P28328@megazone.bigpanda.com
обсуждение исходный текст
Ответ на How Do You Do a Three Way Join?  (kvnsmnsn@cs.byu.edu)
Список pgsql-novice
On Tue, 22 May 2007 kvnsmnsn@cs.byu.edu wrote:

> I've got three tables, <jqz>, <zqj>, and <abc>.  I can do a
> <jqz j RIGHT JOIN zqj z> and a <zqj z LEFT JOIN abc a>, but is there a
> way to do a three-way join to get the columns of all three tables?  Of
> course I could do one of those former two joins and then join the out-
> put table to the third table, but is there a way to do it without cre-
> ating the intermediate table?
>
> I tried:
>
>      SELECT
>          j.abc, j.def, z.xyz, a.ghi
>        FROM
>          jqz j RIGHT JOIN zqj z LEFT JOIN abc a
>        ON
>          j.abc = z.abc AND z.xyz = a.xyz;

I think you'd want something like
 (jqz j RIGHT JOIN zqj z ON j.abc=z.abc) LEFT JOIN abc a ON (z.xyz=a.xyz)

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

Предыдущее
От: Richard Broersma Jr
Дата:
Сообщение: Re: How Do You Do a Three Way Join?
Следующее
От: "David Monarchi"
Дата:
Сообщение: reading table metadata from pl/pgsql in 8.2 under FreeBSD