my @IDnumber=(); #Initialize this... while (my @row1 = $sth ->fetchrow_array){ push @IDnumber,[@row1]; # save the row as an anon-array print "@row1\n"; #All the elements were printed out by this state +ment. @IDnumber=@row1; } print "@row1\n"; #this is going to be empty! # snip! print "@IDnumber\n"; foreach my $row(@IDnumber){ printf "%s\n",join(",",@$row); }