my $address_exists_sth; sub address_exists { my ($address) = @_; $address_exists_sth ||= $dbh->prepare(' SELECT * FROM emails WHERE `email`=? ); return $dbh->selectrow_arrayref($address_exists_sth) && 1; } for my $address (@addresses) { if (address_exists($address)) { ... } }