O uso de SELECT COUNT (*) antes de SELECT INTO é mais lento que o uso de Exceções?

Minhasultima questão me fez pensar.

1)

SELECT COUNT(*) INTO count FROM foo WHERE bar = 123;
IF count > 0 THEN
    SELECT a INTO var FROM foo WHERE bar = 123;
    -- do stuff
ELSE
    -- do other stuff
END IF;

2)

BEGIN
    SELECT a INTO var FROM foo where bar = 123;
    -- do stuff
EXCEPTION
    WHEN no_data_found THEN
        --do other stuff
END ;

Suponho que o número 2 seja mais rápido, pois requer menos uma viagem ao banco de dados.

Existe alguma situação em que eu seria superior, que eu não estou considerando?

EDIT: Vou deixar esta pergunta travar por mais alguns dias, para reunir mais votos nas respostas, antes de responder.

questionAnswers(4)

yourAnswerToTheQuestion