> boun...@sqlite.org] On Behalf Of Fabian > Sent: 17 October 2011 15:34 > > > No, I only want to have a capped total available. > > If I would go with Simons solution, I have to read the rows for the first > 100 pages (or whatever the cap is) into a temporary table, just to show the > first page. I don't need a cache for all those other pages, so that seems a lot > of overhead. I only want to know if there are 100 or less pages (without > copying data around). > > Maybe COUNT() is also creating a temporary table behind the scenes, then > the performance of Simons solutions would be comparable with what I have > now, and I would have the advantage that I can re-use that table to show > subsequent pages without reading from disk. > > But I always assumed COUNT() was faster than copying between tables, > maybe I should just benchmark it.
I had the idea that you just retrieved the first 100 records and not the first 100 pages. Could the user not just see the first 100 records and perhaps an indicator if there were more or not. He could then get 100 records at a time browsing through them or if he so wished get a record count (you would then use the count function on all records). If you need to know up front whether there are more than 5000 records or not I suggest you use the suggestion from Petite Abeille: select count( * ) from ( select 1 or even just "select null" which will not fetch anything. from table limit 5000 ) You could do that and also just select e.g. 50 actual rows and display these to the user. /Frank _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users