Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Re^7: How to add columns with new row name using perl from mysql query?

by finddata (Sexton)
on Apr 06, 2017 at 05:00 UTC ( #1187211=note: print w/replies, xml ) Need Help??


in reply to Re^6: How to add columns with new row name using perl from mysql query?
in thread How to add columns with new row name using perl from mysql query?

This output i got from previous output itself the thing i tried it to push into some piechart format so i had showed my code with following format .Thats why i had posted my code with the following format while am posting my question.
For example:Just for reference i showed you this code
while(my @row_array=$sth->fetchrow_array) { if ($tmp == 0) { $var_data_running .= "\[\"$row_array[0] \($row_array[2]\)\",$r +ow_array[2]\]"; $var_data_pending .= "\[\"$row_array[0] \($row_array[1]\)\",$r +ow_array[1]\]"; $tmp++; } else { $var_data_running .= ",\[\"$row_array[0] \($row_array[2]\)\",$ +row_array[2]\]"; $var_data_pending .= ",\[\"$row_array[0] \($row_array[1]\)\",$ +row_array[1]\]"; } }

In your recent code you had used join then you are printing those variables
.Here the variable prints properly.To include it into some chart format i had reformat the following part of code as like the above one which as follows
my $orun=join('',@iarray_run); my $opend=join('',@iarray_pend);

Replies are listed 'Best First'.
Re^8: How to add columns with new row name using perl from mysql query?
by huck (Parson) on Apr 06, 2017 at 06:19 UTC

    If you were paying attention you would see that even your code had commas between the interior arrays.

    $var_data_running .= ",\[\"$row_array[0] \($row_array[2]\)\",$row_arr +ay[2]\]";
    That is why
    my $orun=join(',',@iarray_run); print "var data_run=[$orun];\n";
    is correct.
    use strict; use warnings; use DBI; my $storagefile='finddata'; my $DBH = DBI->connect( "dbi:SQLite:dbname=".$storagefile ) || die "Ca +nnot connect: $storagefile $DBI::errstr"; my $sql = 'SELECT queue_name,jobs_pend,jobs_run FROM queues ORDER BY jobs_run DESC'; my $sth = $DBH->prepare( $sql ); $sth->execute(); # input my %table = (); my $recno = 0; my @top = (); while (my ($name,$pend,$run) = $sth->fetchrow_array){ my $key = ($recno++ < 5) ? $name : 'other' ; push @top,$key unless (defined ($top[-1]) && $top[-1] eq 'other'); $table{$key}{'pend'} += $pend; $table{$key}{'run'} += $run; } #So first you need to make your interior arrays my @iarray_run; for my $key (@top){ push @iarray_run,'["'.$key.'",'.$table{$key}{'run'}.']'; } # then you join them and assign them my $orun=join(',',@iarray_run); print "var data_run=[$orun];\n"; my $orun2=join('',@iarray_run); print "wrong-var data_run=[$orun2];\n"; print "\n"; use JSON 'decode_json'; my $frjson_data_run = decode_json( "[$orun2]" );
    Result
    var data_run=[["adice_short",192],["ncsim_short",84],["ncsim_long",78] +,["adice_long",39],["normal",30],["other",34]]; wrong-var data_run=[["adice_short",192]["ncsim_short",84]["ncsim_long" +,78]["adice_long",39]["normal",30]["other",34]]; , or ] expected while parsing array, at character offset 21 (before "" +ncsim_short",84]["n...") at 1187071a.pl line 38.
    Even poj's code at Re^5: How to add columns with new row name using perl from mysql query? via encode_json prints
    var data_run = [["adice_short (192)","192"],["ncsim_short (84)","84"], +["ncsim_long (78)","78"],["adice_long (39)","39"],["normal (30)","30" +],["other (34)","34"]]
    so i think you still need to pay much more attention to what you are doing.

    http://www.json.org/An array is an ordered collection of values. An array begins with [ (left bracket) and ends with ] (right bracket). Values are separated by , (comma).

    Just another day wasted i guess

    You owe The Oracle some funky characters. And still no proper grovel.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1187211]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (4)
As of 2019-12-05 21:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Strict and warnings: which comes first?



    Results (151 votes). Check out past polls.

    Notices?