Ваше сообщение содержит несколько тегов БД, и у каждого есть системные каталоги и / или информационная схема, которая позволит вам узнать список процедур.Однако какая таблица / представление для запроса будет отличаться от механизма БД к следующему ... (Например, в Postgres вы присоединитесь к pg_proc и pg_aggregate, так как information_schema.routines не скажет вам, какие процессы являются агрегатами.)
Обычно можно предположить, что типичные агрегатные функции (sum()
, count()
, avg()
...) существуют во всех реализациях базы данных.
Единственное исключение, которое мне известноof is Postgres, который не поддерживает any()
/ some()
из-за неоднозначности в синтаксисе :
SELECT b1 = ANY((SELECT b2 FROM t2 ...)) FROM t1 ...;