On Mon, Oct 18, 2010 at 1:16 AM, AI Rumman <rummandba@xxxxxxxxx> wrote: > At present for reporting I use following types of query: > select crm.*, crm_cnt.cnt > from crm, > (select count(*) as cnt from crm) crm_cnt; > Here count query is used to find the total number of records. > Same FROM clause is copied in both the part of the query. > Is there any other good alternative way to get this similar value? Well, it looks like you're currently executing two sequential scans over the "crm" table. And you're including the total row-count as a separate column in every row you get back, although you really only need this piece of information once. Since you're fetching all of the "crm" table anyway, why not get rid of the COUNT(*) entirely and just keep a count on the client-side of the total number of rows you've fetched? Josh -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance