in reply to associating subkeys of separate HoH's

From your problem description, it seems like you simply want:

my $sql3 = "select * from table3"; my $table3 = $dbh->selectall_hashref("foreign_key_table3"); ... foreach (keys(%$table1)) { $table1_foreign_key_table3 = $table3->{$table1->{$_}{foreign_key_table3}}{primary_key}