foreach my $i (@{$t}) { my $id = $i->{id}; my $subs = $i->{subs}; my $name = $i->{name}; my $rv = $sth->execute($id); my $cat = ( { name => $name, id => $id } ); while (my $r = $sth->fetchrow_hashref) { $r->{cat} = $cat; push (@{$p},$r); } return($p); }