The table definition is:
CREATE TABLE ADDRESS (
GROUPID INTEGER NOT NULL,
ADDRESSID INTEGER NOT NULL,
NAME VARCHAR(256) NOT NULL,
SURNAME VARCHAR(256) NOT NULL,
ADDRESS VARCHAR(256),
PHONE VARCHAR(256),
EMAIL VARCHAR(256),
FAX VARCHAR(256),
PRIMARY KEY(GROUPID,ADDRESSID)
);
The explain command gives me these results:
explain SELECT * FROM ADDRESS1 WHERE GROUPID = 5 AND ADDRESSID = 1000;
NOTICE: QUERY PLAN:
Index Scan using address1_pkey on address1 (cost=0.00..2.02 rows=1 width=92)
(PS: There are 100 groups of 10000 recors each => 1.000.000 records)
Denis
At 16.14 01/06/01, Tom Lane wrote:
>Denis Gasparin <denis@edinet.it> writes:
> > All the operations are perfomed in the same table with 1.000.000 of
> records
> > and the searches (those specified by the WHERE clause of SELECT and
> UPDATE)
> > are done only on the primary key of the table itself.
>
>Have you checked (with EXPLAIN) that you're actually getting indexscan
>plans?
>
> regards, tom lane