quickest query to check a table for existance of a value in a field - Mailing list pgsql-sql

From Shane Wright
Subject quickest query to check a table for existance of a value in a field
Date
Msg-id 200203252016.g2PKGVg16516@fullerruss.dsvr.co.uk
Whole thread Raw
Responses Re: quickest query to check a table for existance of a value in a field  (chester c young <chestercyoung@yahoo.com>)
List pgsql-sql
Hi

I have a reasonable sized table (~2m rows), with an indexed field for which 
there are ~200 possible values.

I want a quick way to find out if there are any rows matching a specified 
value for this indexed field.  I dont care how many there are or what their 
properties are, just if there are any or not.

Here's a quick example:

CREATE TABLE mytable(c1 INT4 PRIMARY KEY, c2 INT2);
CREATE INDEX myindex ON mytable(c2);

SELECT COUNT(c2) AS num FROM mytable WHERE c2=1234;

The time it takes to execute the above query appears to be of the order O(n) 
- is there an O(1) query to do it - given that I only want to know if num>0 
or if num=0?  (the function COUNT() doesn't have to be used).

Any help appreciated,

Thanks

--
Shane


pgsql-sql by date:

Previous
From: "Josh Berkus"
Date:
Subject: Cleaning up template 1
Next
From: Thomas Swan
Date:
Subject: Re: Cleaning up template 1