in reply to DB SQL Result Order

If you need to access the values of the returned columns individually, then you will have to push the results onto arrays, and then print them out afterwards with something like print( join( '|', @column ), "\n" ).

On the other hand, if you don't need to do this, you could just concatenate to strings, which will be far cheaper in terms of memory consumed.

# assuming $sth is your SQL statement under DBI $sth->execute(); my @columns; for( @{$sth->{NAME}} ) { push @columns, $_; } while( my $r = $sth->fetchrow_arrayref ) { my $index = 0; for( @$r ) { $columns[$index++] .= "|$_"; } } print "$_\n" for @columns;

update: rewrote the code to follow the spec. (Wasn' t paying attention :).


print@_{sort keys %_},$/if%_=split//,'= & *a?b:e\f/h^h!j+n,o@o;r$s-t%t#u'