where c not in (:b1, :b2, … , :b9999)

I do not like this kind of dynamic NOT IN clauses. It is better to have a temporary table, a bit like in create global temporary table t(x number not null); insert into t(x) values (:b1); insert into t(x) values (:b2); … insert into t(x) values (:b9999); select foo from bar where c not in […]