Re: To query many tables. - Mailing list pgsql-sql

From A_Schnabel@t-online.de (Andre Schnabel)
Subject Re: To query many tables.
Date
Msg-id 006501c13dba$ab8954c0$0201a8c0@aschnabel.homeip.net
Whole thread Raw
In response to To query many tables.  (trebischt@freemail.hu (trebischt))
List pgsql-sql
----- Original Message -----
From: "trebischt" <trebischt@freemail.hu>
Subject: [SQL] To query many tables.


> Hi,
>
> The query looks like this:
>
> select * from table1 f, table2 s, table3 t, table4 fo, table5 fi,
> table6 si, table 7 se, table8 e, table9 n, table10 ten, table 11 el,
> table 12 tw ...
> where f.id=s.id
> and f.id=t.id
> and f.id=fo.id
> and f.id=fi.id
> and so on...
>
> Is this the right way, or are there any better solution?
> How do the professionals make that big queries?

Yes, this is ONE right way. Professionals do it the same way ;-).
But you can use the "JOIN"-Clause instead. It's your desicion, what's more
readable.
With JOIN it would look like this:

select * FROM   table1 f    JOIN    table2 s ON f.id = s.id           JOIN    table 3 t ON f.id = t.id   .... more
joinshere ....
 
WHERE xxx

If you use your way or this simple joins, there must be a row with the same
id in each table, to have it shown by your query. If you want to see all
records, that have an entry in at least one table you have to use outer
joins. More details on SELECT statemants and joins are here:
http://www.postgresql.org/idocs/index.php?queries.html.

Andre



pgsql-sql by date:

Previous
From: "Wei Weng"
Date:
Subject: Re: Which SQL query makes it possible to optain the 3 greatest values of an interger list ?
Next
From: Tom Lane
Date:
Subject: Re: optimizing queries and indexes...