psql(コマンドラインインターフェイス)を使用している場合は、\df+
を使用できます。 tobixenがすでに述べているように(そしてそれはマニュアルに明確に文書化されています)。
SQLクエリ内からこれを行う必要がある場合は、システム情報関数
。 pg_get_functiondef()
を探しています
select pg_get_functiondef(oid)
from pg_proc
where proname = 'your_function';
パラメータの数が異なるオーバーロードされた関数を扱っている場合は、名前にパラメータシグネチャを含める必要があります:
select pg_get_functiondef('public.foo(int)'::regprocedure);
select pg_get_functiondef('public.foo(int,int)'::regprocedure);
関数foo
のオーバーロードされたバージョンを取得します (1つのバージョンには1つのintパラメーターがあり、もう1つのバージョンには2つのintパラメーターがあります)。