On Saturday 23 June 2007 05:38:56 Andreas Kretschmer wrote: > Stefan Arentz <[EMAIL PROTECTED]> schrieb: > > I need to get statistics from a bunch of tables. Simply the number of > > records in them. > > > > The query plan looks like this: > > > > => explain select count(id) from stuff; > > QUERY PLAN > > ------------------------------------------------------------------- > > Aggregate (cost=1629.69..1629.70 rows=1 width=8) > > -> Seq Scan on stuff (cost=0.00..1517.75 rows=44775 width=8) > > > > The sequential scan kind of worries me. Is there a better/faster way to > > do this? > > Yes. > > A "select count(*) from foo;" enforces a seq. scan. Solutions for this > are discussed here: http://www.varlena.com/GeneralBits/120.php > > > Andreas
Is there any neat trick for doing this for paging estimates? It looks like the only way to get a result count from a more complex query is to either fetch a count first, or to fetch all records and count them in the application. -- ~ manchicken <>< (A)bort, (R)etry, (I)nfluence with large hammer. 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0 Please avoid sending me Word or PowerPoint attachments. See http://www.gnu.org/philosophy/no-word-attachments.html ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match