För att kunna skapa en funktion behöver din användare behörigheten CREATE PROCEDURE som den har fått av DBA:
grant create procedure to myschema;
Om du har privilegiet kan du skapa en funktion som denna
create function square(n in number) return number
is
return n*n;
end;
Och du kan kalla det från SQL så här:
select num, square(num)
from mytable;
Obs:i Oracle är det vanligtvis att föredra att skapa funktioner i paket , i vilket fall den anropande SQL-en skulle se ut så här:
select num, mypackage.square(num)
from mytable;