Re: Funciones SQL

From: raul andrez gutierrez alejo <raulandrez(at)gmail(dot)com>
To: Mario Soto Cordones <marioa(dot)soto(dot)cordones(at)gmail(dot)com>
Cc: FORO POSTGRES <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Funciones SQL
Date: 2014-10-15 22:19:52
Message-ID: CAHQFj723ySo=0a4EUiw081Pu0O=++UY4WjAv72xd+2sGpp_8AQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

hola.

porque no usas una vista, no veo que incluya loop o operaciones complejas.

El 15 de octubre de 2014, 12:49, Mario Soto Cordones <
marioa(dot)soto(dot)cordones(at)gmail(dot)com> escribió:

> Marcelo:
>
>
>
> Tal como indica Alvaro, debieras hacer dos funciones una para SQL y otra
> para PLPGSQL y medir el rendimiento.
>
>
>
> En lo personal utilizo mucho el PLPGSQL, pero es básicamente porque hago
> otras cosas más en las funciones.
>
>
>
> Saludos
>
>
>
> Mario Soto Cordones
>
>
>
> *De:* Marcelo Alejandro España Koock [mailto:mespanak(at)gmail(dot)com]
> *Enviado el:* miércoles, 15 de octubre de 2014 14:19
> *Para:* Alvaro Herrera
> *CC:* Mario Soto Cordones; pgsql-es-ayuda(at)postgresql(dot)org
> *Asunto:* Re: [pgsql-es-ayuda] Funciones SQL
>
>
>
> Alvaro,
>
>
>
> Frecuencia: 1 / 2 veces por mes
>
> Tiempo: 1 minuto la extracción total del set de tatos (no el de la
> función, sino la consulta real)
>
> Impacto en la BD: No hay impacto perceptible por los usuarios y tampoco
> en hardware
>
> Volumen de extracción: 22.000 registros promedio
>
>
>
> Saludos,
>
>
>
> El 15 de octubre de 2014, 14:15, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
> escribió:
>
> Marcelo Alejandro España Koock escribió:
> > Más abajo la misma función con un parámetro de entrada como filtro.
> >
> > -- Crea la funcion
> > CREATE OR REPLACE FUNCTION admmek_test_function (in filtro_empalme text,
> > out contrato varchar, out empalme varchar)
> > RETURNS SETOF record AS
> > $body$
> > DECLARE
> > _my_record RECORD;
> > BEGIN
> > RETURN QUERY SELECT
> a.codigo_contrato::varchar,b.codigo_empalme::varchar
> > FROM contratos a INNER JOIN empalmes b ON
> a.codigo_empalme
> > = b.codigo_empalme
> > WHERE a.codigo_empalme=filtro_empalme;
> > RETURN;
> > END;
> > $body$
> > LANGUAGE 'plpgsql';
> >
> > -- Ejecuta una instrucción SELECT con la funcion
> > SELECT * FROM admmek_test_function('0000006346')
>
> Asegúrate de medir el rendimiento de escribir estas funciones en SQL
> versus plpgsql, en caso de que vayan a ser muy frecuentes. Cada
> lenguaje tiene sus ventajas y desventajas.
>
> --
> Álvaro Herrera http://www.2ndQuadrant.com/
> PostgreSQL Development, 24x7 Support, Training & Services
>
>
>
>
> --
> Atentamente,
>
> Marcelo España Koock
> Cuenta Personal
> GMAIL
>

--
Raul Andres Gutierrez Alejo

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message FRANCISCO JOSE PALAO VILLANUEVA 2014-10-16 08:47:03 Re: servicio postgresql no inicia
Previous Message Alvaro Herrera 2014-10-15 20:41:04 Re: Análisis de performance