in reply to DBI question with placeholders and IN

You need as many bind variables as you have values. Try the following (untested):
my $bindvars = join(",", ("?") x scalar @values); my $sql = <<END_SQL; SELECT COUNT(*) FROM some_table WHERE some_column IN ($bindvars) END_SQL my $sth = $dbh->prepare_cached($sql) || die; $sth->execute(@values) || die; ...