my %test = ( "`test`.`id`" => "NULL", "`test`.`hash`" => "MD5()", "`test`.`power`" => "HASH()", "`test`.`allegiance`" => "?", ); my $str = join(", ", map { "$_" } keys %test); my $val = join(", ", values %test); my $query = "INSERT INTO `test` ($str) VALUES ($val)";