postgresql and perl?

Started by Peter Landisalmost 26 years ago2 messagesgeneral
Jump to latest
#1Peter Landis
ntwebdeveloper@yahoo.com

Hi-
I'm a newbie at postgresql and was working on
sorting by category. What my question is, how do you
sort by category when using a variable. For instance,
you can sort by name in perl by doing:

$sqh = $dbh->prepare(q{select name from company order
by name;});
$sqh->execute();

but what if you have a variable set like:
$sort_selection = name;

How do you sort by the variable?

For instance you cannot do:
$sqh = $dbh->prepare(q{select name from company order
by ?;});
$sqh->execute($sort_selection);

OR

$sqh = $dbh->prepare(q{select name from company order
by $sort_selection;});
$sqh->execute();

If anyone could help, I would greatly appreciate it.

Thanks again!

__________________________________________________
Do You Yahoo!?
Kick off your party with Yahoo! Invites.
http://invites.yahoo.com/

#2Herbert Liechti
Herbert.Liechti@thinx.ch
In reply to: Peter Landis (#1)
Re: postgresql and perl?

Peter Landis wrote:

How do you sort by the variable?

$sqh = $dbh->prepare(q{select name from company order
by $sort_selection;});
$sqh->execute();

Your problem is not Perl specific. The order by column
must be in the result set (projection). Why not doing
it this way:

my @fields = qw/name zip location/;
push @fields, $sort_selection;

$sqh = $dbh->prepare( "SELECT " . join(', ', @fields) .
" FROM company ORDER BY $sort_selction; );
$sqh->execute();

Greetings Herbie
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Herbert Liechti E-Mail: Herbert.Liechti@thinx.ch
ThinX networked business services Stahlrain 10, CH-5200 Brugg
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~