Если вы напишете небольшой кусочек кода, то ответ будет да . Не совсем один SELECT
(если только вы не поместите все это в функцию).
SQL> set serveroutput on;
SQL> declare
2 datum date := trunc(sysdate);
3 begin
4 while 1 <> 2 loop
5 datum := datum - 1;
6 end loop;
7 exception
8 when others then
9 dbms_output.put_line('Last valid date = ' ||
10 to_char(datum, 'dd.mm.yyyy bc'));
11 end;
12 /
Last valid date = 01.01.4712 BC
PL/SQL procedure successfully completed.
SQL>
Это было быстро (я имею в виду, что выполнение кода не занимает много времени). Для других типов данных это не так быстро (например, , что является наименьшим допустимым целым числом? ), по крайней мере, не с использованием того же принципа.