Как использовать Varray для получения нескольких аргументов в функции оракула
Я хочу создать функцию, которая будет принимать несколько аргументов в varray и возвращать наибольшее значение этого varray, как и функция great() в oracle. Аргументы могут содержать все числа или текст. Я думаю об использовании varray числа или текстового типа, но не знаю, как правильно объявить их в определении функции и как получить доступ ко всем элементам на ней, чтобы найти самый лучший.
Я знаю, что функция great() доступна по умолчанию, но я хочу использовать ее как пользовательскую функцию, скажем, great_wrapper(). Что-нибудь о том, как я могу использовать этот varray для принятия аргументов и их обработки, будет полезно. Спасибо
1 ответ
Хорошее место для начала - документация Oracle
Кстати, вот пример, как вы можете получить наибольшее значение из коллекции без определения новой функции:
SQL> create type my_num_type as varray(30) of number
2 /
Type created.
SQL> select max(column_value) from table(my_num_type(1, 2, 3, 4, 5));
MAX(COLUMN_VALUE)
-----------------
5
1 row selected.