関数を作成できるようにするには、ユーザーはDBAによって付与されたCREATEPROCEDURE特権を必要とします。
grant create procedure to myschema;
権限がある場合は、次のような関数を作成できます
create function square(n in number) return number
is
return n*n;
end;
そして、次のようにSQLから呼び出すことができます:
select num, square(num)
from mytable;
注:Oracleでは、通常、パッケージ 、この場合、SQLの呼び出しは次のようになります。
select num, mypackage.square(num)
from mytable;