2010/4/29 Robert Haas <robertmhaas@xxxxxxxxx>: > On Wed, Apr 28, 2010 at 5:37 AM, Vlad Arkhipov <arhipov@xxxxxxxxxxxx> wrote: >> Even if it will be done it does not solve the original issue. If I >> understood you right there is now no any decent way of speeding up the query >> >> select * >> from t2 >> join t1 on t1.t = t2.t >> where t1.id = X; >> >> except of the propagating the t1.id value to the table t2 and createing and >> index for this column? > > No, what I'm saying is that if X is any ANY() expression, you can get > a faster plan in this case by writing: > > SELECT * FROM t2 JOIN t1 ON t1.t = t2.t WHERE t2.id = X; SELECT * FROM t2 JOIN t1 ON t1.t = t2.t WHERE t2.t = X; side note : You might want/need to improve statistics in the column t2.t (in situation/distribution like this one) > > For me this is about 8x faster. > > ...Robert > -- Cédric Villemain -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance