use strict; use warnings; my @numbers = (1,2,3,4); my @data; # Example Data. for my $i (0..$#numbers) { @{$data[$i]} = ( $numbers[$i] ); } for my $i (0..$#data) { print FINAL " CREATE TABLE bce.week_g${last_4_chars}v00_temp" . ($i+1) . " AS SELECT DISTINCT(a.FILEDATE), a.RPTSTORE, b.LOC_N FROM bce.week WHERE ID in (" . join(', ', @{$data[$i]}) . "); "; }