Re: return query

From: "Guillermo E(dot) Villanueva" <guillermovil(at)gmail(dot)com>
To: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: return query
Date: 2014-06-04 15:01:04
Message-ID: CANm+PCBdQ8y60RFnZBDOTSvq5hLGO0sOx=FLfUPOBYOZq5rhMA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

perdón la línea raise notice current_query();era solo una prueba que no
funcionó

Guillermo Villanueva
<http://ar.linkedin.com/in/guillermovillanueva>

El 4 de junio de 2014, 11:57, Guillermo E. Villanueva <
guillermovil(at)gmail(dot)com> escribió:

> Buenas, una función plpgsql me está dando dolores de cabeza y necesito
> debuguear lo que está haciendo.
> Es muy simple, tiene un return query con un select que le paso algunos
> parámetros.
> Concretamente la pregunta es:
> Existe alguna forma de que vea el select que ejecuta la función tal cual
> como la ejecuta?
> Desde ya muchas gracias.
> Por si quieren ver la función: El código es:
>
> CREATE OR REPLACE FUNCTION nacer.fn_embarazadas_sin_control(IN pt_periodo
> timestamp without time zone, IN pi_cant_controles integer DEFAULT 3,
> pi_semanas integer DEFAULT 34)
> RETURNS TABLE(pt_nombreefector text, pv_clavebeneficiario character
> varying, pv_afitipodoc character varying,
> pv_afidni character varying, pv_afiapellido character varying,
> pv_afinombre character varying, pc_aficlasedoc character,
> pc_activo character, pv_cuieefectorasignado character varying,
> pt_fechainscripcion timestamp without time zone,
> pi_afitipocategoria smallint, pt_fechadiagnosticoembarazo timestamp
> without time zone, pi_semanasembarazo integer,
> pt_periodo timestamp without time zone, pi_controles bigint ) AS
> $BODY$
>
> BEGIN
> RETURN QUERY
> SELECT
> efe_conv.nombreefector,
> clavebeneficiario,
> afitipodoc,
> afidni,
> afiapellido,
> afinombre,
> aficlasedoc,
> activo,
> cuieefectorasignado,
> fechainscripcion,
> afitipocategoria,
> fechadiagnosticoembarazo,
> semanasembarazo,
> periodo,
> count(id) cuenta
> FROM
> nacer.historicotemp h
> inner join nacer.efe_conv on h.cuieefectorasignado = efe_conv.cuie
> left join facturacion."trz_I_II" t on h.afidni = t.nrodoc
> WHERE
> h.afitipocategoria = 1 AND
> h.activo = 'S' AND
> ((((date_part('DAY', (pt_periodo::timestamp -
> h.fechadiagnosticoembarazo::timestamp))) / 7)+ h.semanasembarazo) >
> pi_semanas) AND
> (h.periodo = pt_periodo::timestamp) AND
> t.fechactrl > (pt_periodo::timestamp - (pt_periodo::timestamp -
> h.fechadiagnosticoembarazo::timestamp - (h.semanasembarazo*7) * interval '1
> days'))
> GROUP BY 1,2,3,4,5,6,7,8,9,10,11,12,13,14
> having count(id) < pi_cant_controles;
> raise notice current_query();
> END;
> $BODY$
> LANGUAGE plpgsql
>
> Guillermo Villanueva
>
>

In response to

  • return query at 2014-06-04 14:57:50 from Guillermo E. Villanueva

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Guillermo E. Villanueva 2014-06-04 16:24:43 Re: return query
Previous Message Guillermo E. Villanueva 2014-06-04 14:57:50 return query