Om du använder psql (kommandoradsgränssnittet) kan du använda \df+
som tobixen redan har sagt (och som är tydligt dokumenterat i manualen).
Om du behöver göra detta från en SQL-fråga, ta en titt på systeminformationsfunktioner
. Du letar efter pg_get_functiondef()
select pg_get_functiondef(oid)
from pg_proc
where proname = 'your_function';
Om du har att göra med överbelastade funktioner som har ett annat antal parametrar, måste du inkludera parametersignaturen i namnet:
select pg_get_functiondef('public.foo(int)'::regprocedure);
select pg_get_functiondef('public.foo(int,int)'::regprocedure);
kommer att hämta de överbelastade versionerna av funktionen foo
(en version med en enda int-parameter, den andra versionen med två int-parametrar).