Re: large resultset
AI Rumman <[email protected]> Tue, 15 Jun 2010 16:01:17 +0600
| Newsgroups | gmane.comp.db.postgresql.php |
|---|---|
| Message-ID | <[email protected]> |
No. I need to send 2 million records. I want to know what is the best possible way to send these records? HOw should I write the plpgsql procedure to send record ony by one to improve the response time to the users? On Tue, Jun 15, 2010 at 3:43 PM, Thom Brown <[email protected]> wrote: > On 15 June 2010 10:40, vinny <[email protected]> wrote: > >> >> On Tue, 15 Jun 2010 10:33:05 +0100, Thom Brown <[email protected]> >> wrote: >> > On 15 June 2010 09:31, AI Rumman wrote: >> > How to return large resutlset (almost 2 millions record) in php? >> > >> > Presumably this is so people can download results rather than display >> > them in a browser? >> > >> > Here's a basic a raw version of what you can do: >> > >> > $db = pg_connect($connection_string); >> > >> > $results = pg_query($db, $query); >> > >> > while ($result = pg_fetch_array($results) >> > { >> > echo implode("|", $result) . "\n"; //typo before >> >> > } >> > >> > pg_close($db); >> > >> > Obviously that wouldn't do by itself, but it's quite simple to loop over >> > a result set. >> > >> > Regards >> > >> > Thom >> > >> >> If that's the case surely you'd use some SQL to merge the data into one >> long string and return it in a single record. >> Looping over two million results is going to take a while, not to mention >> quite a bit of memory. >> v. >> >> > I don't understand. Return all data as a single massive string? > > Thom >