Are projected queries optimized like nonprojected ones

From: "Andrus" <kobruleht2(at)hot(dot)ee>
To: <pgsql-general(at)postgresql(dot)org>
Subject: Are projected queries optimized like nonprojected ones
Date: 2008-10-16 11:43:42
Message-ID: 65E052F669BF4EA88DA49A0264021903@andrusnotebook
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I'm looking a hint for new application dynamic query builder creation for
PostgreSQL 8.0+

Following two queries return same results:

SELECT ...
FROM t1 JOIN t2 USING (cx)
LEFT JOIN t3 USING (cy)
LEFT JOIN t4 USING (cz)
WHERE ...

and

SELECT ...
FROM (SELECT * FROM t1 JOIN t2 USING (cx) LEFT JOIN t3 USING (cy) WHERE
... ) p1
LEFT JOIN t4 USING (cz)
WHERE ...

Second query is easier to generate but contains two where clauses which
produce logically same resultset and in first query.
So it is preferable to use second form. However I'm not clear how this
affects query perfomance.

Questions:

Will execution speed of both queries be the same ?
Will 8.0+ optimizers create same execution plan for those queries ?

Andrus.

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2008-10-16 11:55:22 Re: PQescapestringConn not found in libpq.dll
Previous Message Ivan Sergio Borgonovo 2008-10-16 11:17:40 Debian, backport and tsearch