On 23.09.2016 11:00, Pavel Stehule wrote:
2016-09-23 8:35 GMT+02:00 Sven R. Kunze <srku...@mail.de
<mailto:srku...@mail.de>>:
I was wondering: would it be possible for PostgreSQL to rewrite
the query to generate the UNION (or subquery plan if it's also
fast) on it's own?
It depends on real data. On your specific data the UNION variant is
pretty fast, on different set, the UNION can be pretty slow. It is
related to difficult OR predicate estimation.
I figure that the UNION is fast if the sub-results are small (which they
are in our case). On the contrary, when they are huge, the OUTER JOIN
variant might be preferable.
Is there something I can do to help here?
Or do you think it's naturally application-dependent and thus should be
solved with application logic just as we did?
Cheers,
Sven