On Mon, Oct 31, 2011 at 2:34 PM, Claudio Freire <klaussfreire@xxxxxxxxx> wrote: > On Mon, Oct 31, 2011 at 3:24 PM, Robert Haas <robertmhaas@xxxxxxxxx> wrote: >> Sure it does: >> >> rhaas=# create table baz (a bool, b int, c text, primary key (a, b)); >> NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index >> "baz_pkey" for table "baz" >> CREATE TABLE >> rhaas=# insert into baz select true, g, >> random()::text||random()::text||random()::text||random()::text from >> generate_series(1,400000) g; > > Ok, that's artificially skewed, since the index has only one value in > the first column. > > But it does prove PG considers the case, and takes into account the > number of values it has to iterate over on the first column, which is > very very interesting and cool. Yes. As your experience indicates, it's rare for this to be the best plan. But it is considered. So there you have it. :-) -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance