On 2012-10-30 14:08:56 -0500, Petr Praus wrote: > select count(*) from contest c > left outer join contestparticipant cp on c.id=cp.contestId > left outer join teammember tm on tm.contestparticipantid=cp.id > left outer join staffmember sm on cp.id=sm.contestparticipantid > left outer join person p on p.id=cp.personid > left outer join personinfo pi on pi.id=cp.personinfoid > where pi.lastname like '%b%' or pi.firstname like '%a%'; Btw, not really related to the question, but the way you use left joins here doesn't really make sense and does lead to inferior plans. As you restrict on 'pi', the rightmost table in a chain of left joins, there is no point in all those left joins. I would guess the overall plan is better if use straight joins. Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance