From: | CoL <col(at)mportal(dot)hu> |
---|---|
To: | pgsql-performance(at)postgresql(dot)org |
Subject: | Re: COUNT & Pagination |
Date: | 2004-01-11 20:01:18 |
Message-ID: | bts9p5$2nml$1@news.hub.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
Hi,
David Shadovitz wrote, On 1/11/2004 7:10 PM:
> I understand that COUNT queries are expensive. So I'm looking for advice on
> displaying paginated query results.
>
> I display my query results like this:
>
> Displaying 1 to 50 of 2905.
> 1-50 | 51-100 | 101-150 | etc.
>
> I do this by executing two queries. One is of the form:
>
> SELECT <select list> FROM <view/table list> WHERE <filter> LIMIT m OFFSET n
>
> The other is identical except that I replace the select list with COUNT(*).
yes, you need 2 query. Or select it from one:
select *, (select count(*) from table) as count from table...
pg will optimize this query, and do the count only once
>
> And an unrelated question:
> I'm running PG 7.2.2 and want to upgrade to 7.4.1. I've never upgraded PG
> before and I'm nervous. Can I simply run pg_dumpall, install 7.4.1, and then
> feed the dump into psql? I'm planning to use pg_dumpall rather than pg_dump
> because I want to preserve the users I've defined. My database is the only one
> on the system.
yes. But check tha faq and the manual for a better explain.
C.
From | Date | Subject | |
---|---|---|---|
Next Message | Jeff Fitzmyers | 2004-01-11 20:59:36 | Re: COUNT & Pagination |
Previous Message | Dennis Bjorklund | 2004-01-11 19:55:00 | Re: Explain not accurate |