From: | Dave Cramer <pg(at)fastcrypt(dot)com> |
---|---|
To: | johannesbuehler(at)oderbruecke(dot)de |
Cc: | pgsql-performance(at)postgresql(dot)org |
Subject: | Re: effizient query with jdbc |
Date: | 2005-12-22 14:17:45 |
Message-ID: | 1380B56B-1419-4F4D-894B-979F075F18CF@fastcrypt.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
The problem is you are getting the entire list back at once.
You may want to try using a cursor.
Dave
On 15-Dec-05, at 9:44 AM, johannesbuehler(at)oderbruecke(dot)de wrote:
> Hi,
> I have a java.util.List of values (10000) which i wanted to use for
> a query in the where clause of an simple select statement.
> iterating over the list and and use an prepared Statement is quite
> slow. Is there a more efficient way to execute such a query.
>
> Thanks for any help.
> Johannes
> .....
> List ids = new ArrayList();
>
> .... List is filled with 10000 values ...
>
> List uuids = new ArrayList();
> PreparedStatement pstat = db.prepareStatement("SELECT UUID FROM
> MDM.KEYWORDS_INFO WHERE KEYWORDS_ID = ?");
> for (Iterator iter = ids.iterator(); iter.hasNext();) {
> String id = (String) iter.next();
> pstat.setString(1, id);
> rs = pstat.executeQuery();
> if (rs.next()) {
> uuids.add(rs.getString(1));
> }
> rs.close();
> }
> ...
>
>
>
>
>
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 6: explain analyze is your friend
>
From | Date | Subject | |
---|---|---|---|
Next Message | Steve Peterson | 2005-12-22 15:23:49 | Re: effizient query with jdbc |
Previous Message | Carlos Benkendorf | 2005-12-22 14:06:20 | Re: ORDER BY costs |