Thread: order by in c (libpq)?

order by in c (libpq)?

From
Ken Plumbly
Date:
Hi All,  I am writing an app in c,  everything works fine except for the

order by in my query.

I am sending the query thusly:

sprintf(querystr, "select * from %s order by %s", table, field);

However the query always comeback in the order in which the data was
originally entered into the data base.

The variable field does actually contain a valid field name,  I have
checked
it.

Any ideas????

Ken
kvp@ocol.com


Re: [INTERFACES] order by in c (libpq)?

From
Tom Lane
Date:
Ken Plumbly <kvp@ocol.com> writes:
> I am sending the query thusly:
> sprintf(querystr, "select * from %s order by %s", table, field);
> However the query always comeback in the order in which the data was
> originally entered into the data base.

That is odd, and fairly hard to credit.  One thing I'd wonder about
right away is if you are actually sending the query you think you are.
You might try turning on debug tracing in the backend (make the
connection with PGOPTIONS = "-d 1" or "-d 2" or so) and checking the
postmaster log to see what query the backend reports receiving.

If you can duplicate the failure-to-order when issuing the query
manually in psql, then you've got a backend bug that ought to be
reported as such.  But first I'd suspect some silly little typo
in your app code, like sending the wrong query string or inspecting
the wrong PGresult...
        regards, tom lane