Re: PreparedStatement vs. Statement problem

From: Oliver Jowett <oliver(at)opencloud(dot)com>
To: yoursoft <yoursoft(at)freemail(dot)hu>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: PreparedStatement vs. Statement problem
Date: 2007-11-29 09:21:35
Message-ID: 474E849F.3050603@opencloud.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

yoursoft wrote:
> I have a problem:
> SELECT * FROM mytable WHERE c1 like 'a' UNION ALL SELECT * FROM mytable
> WHERE c2 like 'a' || '%' AND c2 not like 'a' UNION ALL SELECT * FROM
> mytable WHERE c2 like '%' || 'a' || '%' AND c2 not like 'a' || '%' AND
> c2 not like 'a' LIMIT 101 OFFSET 0
>
> Where 'a' is a variable.
> When I run this query from Statement. There is no problem. The result is
> ordered by: First SELECT, second SELECT third SELECT.
> When I run this query from PreparedStatement ('a' values replaced by ?).
> The result is ordered by in alphabets.Why?

You don't have an ORDER BY so the result ordering is undefined. The
planner happens to pick different plans in the two cases which result in
different orderings.

-O

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Oliver Jowett 2007-11-29 09:39:39 Re: PreparedStatement vs. Statement problem
Previous Message yoursoft 2007-11-29 06:37:12 PreparedStatement vs. Statement problem