Re: Big table - using wrong index - why?
От | Chris Ruprecht |
---|---|
Тема | Re: Big table - using wrong index - why? |
Дата | |
Msg-id | 00b501c11929$096a4ec0$5dd26383@corp.compucom.com обсуждение исходный текст |
Ответ на | Big table - using wrong index - why? ("Chris Ruprecht" <chrup999@yahoo.com>) |
Список | pgsql-sql |
Hi Joe, I found the problem - it was a typical "aaaarrrgggghhh" - error. Since pseq is declared int8, I need to say select * from phonelog where entity = '001' and pseq >= 9120::int8 and pseq <= 9123::int8; (casting the two numbers). Then, it works like a charm ... Best regards, Chris ----- Original Message ----- From: "Joe Conway" <joseph.conway@home.com> To: "Chris Ruprecht" <chrup999@yahoo.com>; "pgsql" <pgsql-sql@postgresql.org> Sent: Monday, July 30, 2001 11:43 AM Subject: Re: [SQL] Big table - using wrong index - why? > > phones=# \d i_pl_pseq > > Index "i_pl_pseq" > > Attribute | Type > > -----------+---------------------- > > entity | character varying(3) > > pseq | bigint > > btree > > > > phones=# explain select * from phonelog where entity = '001' and pseq >= > > 9120 and pseq <= 9123; > > NOTICE: QUERY PLAN: > > > > Index Scan using i_pl_loadtimestamp on phonelog (cost=0.00..209247.39 > > rows=607 width=137) > > > > EXPLAIN > > > > phones=# \d i_pl_loadtimestamp > > Index "i_pl_loadtimestamp" > > Attribute | Type > > -----------+---------------------- > > entity | character varying(3) > > loaddate | date > > loadtime | time > > btree > > Just a guess, but what happens if you build i_pl_pseq(pseq, entity), i.e. > reverse the key fields? Also, has the table been vacuum analyzed? > > -- Joe > > > > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Don't 'kill -9' the postmaster _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com
В списке pgsql-sql по дате отправления: