foreach my $audit (keys(%$audits)) { $query = q{SELECT Referrals.1, Referrals.2, Referrals.3, Referrals.4, Referrals.5, Referrals.6, Referrals.7, Referrals.8, Referrals.9, Referrals.10, Referrals.11, Referrals.12, Referrals.13, Referrals.14, States.1 FROM Referrals INNER JOIN States On (Referrals.10 = States.1) WHERE AuditID = ?}; my $sth = $dbh->prepare($query); $sth->execute($audit); my @assign = $sth->fetchrow_array; $sth->finish(); $query = q{INSERT INTO report_printing_table (1,2,3,4,5,6,7,8,9,10,11,12,13) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)}; $sth = $dbh->prepare($query); $sth->execute($audit, $assign[0], $assign[1], $assign[2], $assign[3], $assign[4], $assign[5], $assign[6], $assign[7], $assign[8], $assign[9], $assign[10], $assign[11]); $sth->finish(); }