Het gebruik van COUNT(*) is OK als je ook rownum=1 gebruikt:
declare
l_cnt integer;
begin
select count(*)
into l_cnt
from x
where x.col_a = value_a
and x.col_b = value_b
and rownum = 1;
end;
Dit zal altijd een rij retourneren, dus het is niet nodig om een NO_DATA_FOUND-uitzondering af te handelen. De waarde van l_cnt is 0 (geen rijen) of 1 (er bestaat tenminste 1 rij).