my @columns = @{$sth->{NAME_uc}}; $sth->bind_columns(\@row{@columns}); my @data_cols = grep { $_ ne 'NAME' } @columns; ...then later $data->{"data_$i"} = { map { $_ => $row{$_} } @data_cols };