Re: Help on indexing timestamps

Поиск
Список
Период
Сортировка
От Andre Schubert
Тема Re: Help on indexing timestamps
Дата
Msg-id 20030310152409.56ff79f1.andre@km3.de
обсуждение исходный текст
Ответ на Re: Help on indexing timestamps  (Tomasz Myrta <jasiek@klaster.net>)
Ответы Re: Help on indexing timestamps  (Andre Schubert <andre@km3.de>)
Список pgsql-sql
On Mon, 10 Mar 2003 10:12:15 +0100
Tomasz Myrta <jasiek@klaster.net> wrote:

> Andre Schubert wrote:
> > Hi all,
> > 
> > i have a little problem on indexing a table which contains
> > about 4 millions of traffic-data.
> > My problem is, that a want to select all data from
> > a specific month from a specific ip and this select should use the index.
> > I use the following select:
> > 
> > db_nmkm3aue=# explain analyze select sum(inet_up+inet_down) from tbl_traffic where
date_trunc('month',tbl_traffic.time_stamp)::timestamptz= date_trunc('month',now() - timespan('1 months')) and ip =
'80.243.38.57';
> > NOTICE:  QUERY PLAN:
> > 
> > Aggregate  (cost=116.30..116.30 rows=1 width=16) (actual time=1620.79..1620.79 rows=1 loops=1)
> >   ->  Index Scan using idx_ip_time_stamp on tbl_traffic  (cost=0.00..116.30 rows=1 width=16) (actual
time=1216.79..1579.89rows=5232 loops=1)
 
> > Total runtime: 1620.94 msec
> > 
> > But it takes a long time to select the traffic for all Ips.
> > Is there a way to select these data with using the index correctly ?
> > 
> > Thanks in advance
> > 
> I have one more solution - try to rewrite your where clause to NOT USE 
> function on time_stamp. If your query will look like:
> select ... where time_stamp between (function with now() returning first 
> day) and (function with now() returning last day);
> your index will work fine.
> 
Thanks for the hint, i will test this and report to this list.

Thanks, as


В списке pgsql-sql по дате отправления:

Предыдущее
От: "Victor Yegorov"
Дата:
Сообщение: Optimizing view
Следующее
От: Christoph Haller
Дата:
Сообщение: Re: How to notice column changes in trigger