On Sat, Apr 28, 2018 at 12:01 PM Pavel Stehule <pavel.steh...@gmail.com> wrote:
> Hi > > 2018-04-28 18:52 GMT+02:00 Jeremy Finzel <finz...@gmail.com>: > >> It appears that neither pg_get_function_arguments >> nor pg_get_function_identity_arguments could be used for this. I want to >> get function argument data types from the catalog by ordinal position, >> without the argument name. >> >> For example, I want the same information for these 2 functions: >> >> foo(p_1 int, p_2 text) >> >> - {int, text} >> >> foo(int, text) >> >> - {int, text} >> >> Any suggestions as to how to use the catalogs or built-in postgres >> functions to query this? >> > > CREATE OR REPLACE FUNCTION public.foo(a integer, b integer, c text) > RETURNS text > LANGUAGE sql > AS $function$ select 'hi'; $function$ > > postgres=# select (proargtypes::regtype[])[0:] from pg_proc where proname > = 'foo'; > ┌─[ RECORD 1 ]┬────────────────────────┐ > │ proargtypes │ {integer,integer,text} │ > └─────────────┴────────────────────────┘ > > Regards > > Pavel > > >> Thank you! >> Jeremy >> > This is perfect - thank you!