Re: Query function arg data types ONLY (no arg names)

From: Jeremy Finzel <finzelj(at)gmail(dot)com>
To: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
Cc: Postgres General <pgsql-general(at)postgresql(dot)org>
Subject: Re: Query function arg data types ONLY (no arg names)
Date: 2018-04-29 03:59:20
Message-ID: CAMa1XUjwtqXEtjwwp7+iA3dGG6njfS+0+B7HgKUXDXNjKrcKOg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Sat, Apr 28, 2018 at 12:01 PM Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
wrote:

> Hi
>
> 2018-04-28 18:52 GMT+02:00 Jeremy Finzel <finzelj(at)gmail(dot)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!

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2018-04-29 13:31:31 Re: downgrade postgis 2.4.3 to 2.4.1
Previous Message Tom Lane 2018-04-28 20:58:53 Re: pg_stat_statements : how to catch non successfully finished statements ?