use strict; use warnings; use DBI; my @alljobData = (); my $dbh = DBI->connect(...); my $stmt = "SELECT JOBNAME, STATUS, TIMESTAMP, COMMENT FROM YOUR_TABLES WHERE JOBNAME = ? AND STATUS = ? ORDER BY TIMESTAMP DESC"; my $sth = $dbh->prepare($stmt); foreach my $job (@jobname){ my $rc = $sth->execute($job, "HOLD"); #either check for an error or let failing on fetch do that for you if(my @thisjobData = $sth->fetchrow_array){ push(@allJobData, @thisjobData); } }