Re: How to get many data at once? - Mailing list pgsql-general

From Chandra ASGI Tech
Subject Re: How to get many data at once?
Date
Msg-id fbf9dcc60808080931l771988a0k7a0f0b1ef5327832@mail.gmail.com
Whole thread Raw
In response to How to get many data at once?  ("窦德厚(ddh)" <doudehou@gmail.com>)
List pgsql-general
Hi,
 
PHP has several functions related to postgresql - including a function to fetch all the rows of the resultset at once into an array and then have a loop that extracts one row at a time from that :
 
 
search for all functions with pg_  prefix --- they are PHP functions relating to PostgreSQL. You need not fetch rows one by one from pg, instead fetch all the result rows into a php array and then loop to read them one by one from that array.
 
Regards,
Chandra ASGI

On Thu, Aug 7, 2008 at 7:03 AM, 窦德厚(ddh) <doudehou@gmail.com> wrote:
Hi, if I have such a table:

t_ref_id     t_data
--------------------
1             'abc'
2             '321'
1             'ddd'
2             'xyz'
9             '777'
...


I want to get data with a special t_ref_id:

SELECT t_data FROM THETABLE WHERE t_ref_id = '1';

I must use a while loop to extract the data (I'm using PHP):

$rows = array();
while (($row = pgsql_fetch_assoc($result) !== false) {
    $rows[] = $row;
}

And if there are many matched rows, such as many hundreds or thousands of rows, I think such a loop maybe inefficient.

How to do this in a more efficient way?

Thank you!



--
ddh

pgsql-general by date:

Previous
From: Devrim GÜNDÜZ
Date:
Subject: Re: Postgres 8.3.x installation on Fedora 9 system
Next
From: "Daniel Verite"
Date:
Subject: Re: bytea encode performance issues