Re: Indexing timestamps

From: Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com>
To: Josh Berkus <josh(at)agliodbs(dot)com>
Cc: Andre Schubert <andre(dot)schubert(at)km3(dot)de>, <pgsql-sql(at)postgresql(dot)org>
Subject: Re: Indexing timestamps
Date: 2002-06-06 17:01:37
Message-ID: 20020606095611.A27330-100000@megazone23.bigpanda.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

On Thu, 6 Jun 2002, Josh Berkus wrote:

> Andre,
>
> I'm not even going to try to deal with the seq_scan vs. index_scan
> issues on now(). This has been brought up in the list archives. Test
> your actual response times as well as the query plan; you may find that
> you don't have a real problem.
>
> Something I can help you with:
>
> > explain select * from test_table where date_trunc('month',time_stamp)
> > = date_trunc('month',datetime('2002-01-01'));
> > NOTICE: QUERY PLAN:
> >
> > Seq Scan on test_table (cost=0.00..2441.41 rows=584 width=16)
>
> Try doing a:
> CREATE INDEX idx_test_month ON test_table(extract(month FROM
> time_stamp));
>
> Which should help.

Unfortunately you can't do that in that sort of syntax. You'll
need to create a function that returns the month and is marked
as iscachable and use that function in the index creation and
query.

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Ricardo Javier Aranibar León 2002-06-06 17:03:43 TWO PROBLEMS
Previous Message Joel Burton 2002-06-06 16:49:25 Re: simple select statement inquiry