[PERFORM] How to create an index for type timestamp column using rtree?

2004-07-13 Thread Chris Cheston
Hi all,

I'm storing some timestamps as integers (UTF) in a table and I want to
query by = and = for times between a certain period.  The table has
gotten quite large and is now very slow in querying.

I think it's time to create an index for the timestamp column.

I tried using an rtree (for = and = optimization):

create INDEX logs_timestamp ON logs using rtree (timestamp);

but I get 

ERROR:  data type integer has no default operator class for access
method rtree
You must specify an operator class for the index or define a
default operator class for the data type

Do I have to create an rtree type for my timestamp integer column?  

Existing rtree columns are below.

Pls help.

Thanks,
Chris

server= select am.amname as acc_method, opc.opcname as ops_name from
pg_am am, pg_opclass opc where opc.opcamid = am.oid order by
acc_method, ops_name;
 acc_method |ops_name 
+-
 btree  | abstime_ops
 btree  | bit_ops
 btree  | bool_ops
 btree  | bpchar_ops
 btree  | bytea_ops
 btree  | char_ops
 btree  | cidr_ops
 btree  | date_ops
 btree  | float4_ops
 btree  | float8_ops
 btree  | inet_ops
 btree  | int2_ops
 btree  | int4_ops
 btree  | int8_ops
 btree  | interval_ops
 btree  | macaddr_ops
 btree  | name_ops
 btree  | numeric_ops
 btree  | oid_ops
 btree  | oidvector_ops
 btree  | text_ops
 btree  | time_ops
 btree  | timestamp_ops
 btree  | timestamptz_ops
 btree  | timetz_ops
 btree  | varbit_ops
 btree  | varchar_ops
 hash   | bpchar_ops
 hash   | char_ops
 hash   | cidr_ops
 hash   | date_ops
 hash   | float4_ops
 hash   | float8_ops
 hash   | inet_ops
 hash   | int2_ops
 hash   | int4_ops
 hash   | int8_ops
 hash   | interval_ops
 hash   | macaddr_ops
 hash   | name_ops
 hash   | oid_ops
 hash   | oidvector_ops
 hash   | text_ops
 hash   | time_ops
 hash   | timestamp_ops
 hash   | timestamptz_ops
 hash   | timetz_ops
 hash   | varchar_ops
 rtree  | bigbox_ops
 rtree  | box_ops
 rtree  | poly_ops
(51 rows)

---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [PERFORM] How to create an index for type timestamp column using rtree?

2004-07-13 Thread Tom Lane
Chris Cheston [EMAIL PROTECTED] writes:
 I'm storing some timestamps as integers (UTF) in a table and I want to
 query by = and = for times between a certain period.

btree can handle range queries nicely; why do you think you need an
rtree?  rtree is for 2-dimensional datums which a timestamp is not ...

regards, tom lane

---(end of broadcast)---
TIP 6: Have you searched our list archives?

   http://archives.postgresql.org


Re: [PERFORM] How to create an index for type timestamp column using rtree?

2004-07-13 Thread Chris Cheston
Thanks,  Chris and Tom.
I had read *incorrectly* that rtrees are better for = and = comparisons.

Chris

On Tue, 13 Jul 2004 14:33:48 +0800, Christopher Kings-Lynne
[EMAIL PROTECTED] wrote:
  I'm storing some timestamps as integers (UTF) in a table and I want to
  query by = and = for times between a certain period.  The table has
  gotten quite large and is now very slow in querying.
 
  I think it's time to create an index for the timestamp column.
 
 Uh, yeah.
 
  I tried using an rtree (for = and = optimization):
 
 Bad idea.
 
  Do I have to create an rtree type for my timestamp integer column?
 
 Why do you want an rtree index?  They're for multidimensional polygonal
 data and stuff.  Just create a normal index...
 
 Chris
 


---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]