Обсуждение: View & Query Performance
Hi all,
I'm trying to find smarter ways to dig data from my database, and have the following scenario:
table1
-- id
-- name
.
.
.
.
.
.
table2
-- id
-- number
.
.
.
.
.
.
I want to create a view to give me back just what I want:
The id, the name and the number.
I tought in doing the following:
create view my_view as select t1.id, t1.name, t2.number from table1 as t1, table2 as t2 where t1.id = t2.id;
Will this be enough fast ? Are there a faster way to make it work ?!
This table is mid-big, around 100K registers ..
Regards,
Can you tell us more about the structure of your tables,
witch sort of index did you set on witch fields ?
Did you really need to get ALL records at once, instead you may be could use paging (cursor or SELECT LIMIT OFFSET ) ?
And did you well configure your .conf ?
Regards
Alban Médici
From: pgsql-performance-owner@postgresql.org [mailto:pgsql-performance-owner@postgresql.org] On Behalf Of Igor Maciel Macaubas
Sent: jeudi 14 octobre 2004 23:03
To: pgsql-performance@postgresql.org
Subject: [PERFORM] View & Query Performance
Hi all,
I'm trying to find smarter ways to dig data from my database, and have the following scenario:
table1
-- id
-- name
.
.
.
.
.
.
table2
-- id
-- number
.
.
.
.
.
.
I want to create a view to give me back just what I want:
The id, the name and the number.
I tought in doing the following:
create view my_view as select t1.id, t1.name, t2.number from table1 as t1, table2 as t2 where t1.id = t2.id;
Will this be enough fast ? Are there a faster way to make it work ?!
This table is mid-big, around 100K registers ..
Regards,
Igor Maciel Macaubas wrote: > Hi all, > > I'm trying to find smarter ways to dig data from my database, and > have the following scenario: > > table1 -- id -- name . . . . . . > > table2 -- id -- number . . . . . . > > I want to create a view to give me back just what I want: The id, the > name and the number. I tought in doing the following: create view > my_view as select t1.id, t1.name, t2.number from table1 as t1, table2 > as t2 where t1.id = t2.id; > > Will this be enough fast ? Are there a faster way to make it work ?! > This table is mid-big, around 100K registers .. That's as simple a way as you will find. If you apply further conditions, e.g. SELECT * FROM my_view WHERE id = 123; then you should see any index on "id" being used. -- Richard Huxton Archonet Ltd