JEŚLI NIE JEST ISTNIEJE W funkcji PLSQL

Mam funkcję, która ma trzy instrukcje If / Then przed otwarciem kursora. Instrukcje If / Then sprawdzają poprawność przed otwarciem kursora.

Chciałbym dodać jeszcze jedną kontrolę poprawności If / Then, jednak jest ona nieco bardziej skomplikowana niż pozostałe. Poniżej znajduje się przykład, a ja zablokowałem skomentowałem to, co chciałbym dodać:

begin
    if not procedure.validation_function (<variable>, <condition>=TRUE) then
        return variable2;
    end if;

   /* if not exists
    (
       SELECT 'x' FROM table1
       WHERE table1_id = variable1_id
       AND trunc(sysdate) < trunc(table1_date + 60)
    ) then
        return variable2;
    end if; */

    open cursor(<argument>);
    fetch cursor into <variable>;
    close cursor;
    return <variable>;


end;

Moim problemem jest to, że pochodzę ze świata T-SQL i znajduję w PL / SQLjeśli nie istnieje polecenie nie działa. Czy istnieje sposób, w jaki mogę, z poziomu funkcji, mieć instrukcję If NO_DATA_FOUND, w której używam SELECT?

Czy istnieje sposób na zagnieżdżenie w nim innej funkcji, więc mogę:

begin
     SELECT ....
     FROM ....
     WHERE ....
        if NO_DATA_FOUND then
           return variable2;
        end if;
end;

questionAnswers(1)

yourAnswerToTheQuestion