Thread: pg_get_functiondef(), trailing spaces and + sign
Is there any direct way in Postgresql to get rid of the frankly anti-useful junk at the end of each line (which also infects pg_stat_activity.query), or must I resort to sed post-processing? test=# select pg_get_functiondef(oid) test-# from pg_proc test-# where proname = 'foo'; pg_get_functiondef ---------------------------------------------------- CREATE OR REPLACE FUNCTION public.foo(bar integer)+ RETURNS double precision + LANGUAGE plpgsql + AS $function$ + begin + return bar * 1.0; + end; + $function$ + (1 row) -- Born in Arizona, moved to Babylonia.
On 2/27/23 11:34 AM, Ron wrote: > Is there any direct way in Postgresql to get rid of the frankly > anti-useful junk at the end of each line (which also infects > pg_stat_activity.query), or must I resort to sed post-processing? \pset format unaligned > > > test=# select pg_get_functiondef(oid) > test-# from pg_proc > test-# where proname = 'foo'; > pg_get_functiondef > ---------------------------------------------------- > CREATE OR REPLACE FUNCTION public.foo(bar integer)+ > RETURNS double precision + > LANGUAGE plpgsql + > AS $function$ + > begin + > return bar * 1.0; + > end; + > $function$ + > > (1 row) > > -- Adrian Klaver adrian.klaver@aklaver.com
On 2/27/23 11:34 AM, Ron wrote: > Is there any direct way in Postgresql to get rid of the frankly > anti-useful junk at the end of each line (which also infects > pg_stat_activity.query), or must I resort to sed post-processing? > > Or \ef foo > test=# select pg_get_functiondef(oid) > test-# from pg_proc > test-# where proname = 'foo'; > pg_get_functiondef > ---------------------------------------------------- > CREATE OR REPLACE FUNCTION public.foo(bar integer)+ > RETURNS double precision + > LANGUAGE plpgsql + > AS $function$ + > begin + > return bar * 1.0; + > end; + > $function$ + > > (1 row) > > -- Adrian Klaver adrian.klaver@aklaver.com
On Mon, Feb 27, 2023 at 2:40 PM Adrian Klaver <adrian.klaver@aklaver.com> wrote:
On 2/27/23 11:34 AM, Ron wrote:
> Is there any direct way in Postgresql to get rid of the frankly
> anti-useful junk at the end of each line (which also infects
> pg_stat_activity.query), or must I resort to sed post-processing?
>
>
Or
\ef foo
that will edit the function, I think he meant
\sf foo
which will show you the content of the function!
> test=# select pg_get_functiondef(oid)
> test-# from pg_proc
> test-# where proname = 'foo';
> pg_get_functiondef
> ----------------------------------------------------
> CREATE OR REPLACE FUNCTION public.foo(bar integer)+
> RETURNS double precision +
> LANGUAGE plpgsql +
> AS $function$ +
> begin +
> return bar * 1.0; +
> end; +
> $function$ +
>
> (1 row)
>
>
--
Adrian Klaver
adrian.klaver@aklaver.com