Я прочитал книгу, название которой - "Oracle PL SQL Programming" (2-е изд.) Стивена Фейерштейна и Билла Прибыля. На стр. 99 существует точка, предполагающая, что
Не удаляйте "SELECT COUNT (*)" из таблицы, если вам действительно не нужно знать общее количество "хитов". Если вам нужно только знать, существует ли более одного совпадения, просто дважды выберите с явным курсором.
Не могли бы вы кому-нибудь объяснить этот момент больше, предоставив пример? Спасибо.
Обновление:
Как Стивен Фюерштейн и Билл Прибыл рекомендуют нам не использовать SELECT COUNT() для проверки наличия записей в таблице или нет, может ли кто-нибудь помочь мне отредактировать код ниже, чтобы избежать использования SELECT COUNT (*), используя явные вместо этого курсор? Этот код написан в хранимой процедуре Oracle.
У меня есть таблица emp (emp_id, emp_name,...), поэтому, чтобы проверить предоставленный идентификатор сотрудника или нет:
CREATE OR REPLACE PROCEDURE do_sth ( emp_id_in IN emp.emp_id%TYPE )
IS
v_rows INTEGER;
BEGIN
...
SELECT COUNT(*) INTO v_rows
FROM emp
WHERE emp_id = emp_id_in;
IF v_rows > 0 THEN
/* do sth */
END;
/* more statements */
...
END do_sth;