From: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> |
---|---|
To: | Marcelo Alejandro España Koock <mespanak(at)gmail(dot)com> |
Cc: | Mario Soto Cordones <marioa(dot)soto(dot)cordones(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Funciones SQL |
Date: | 2014-10-15 17:15:37 |
Message-ID: | 20141015171536.GL7043@eldon.alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
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
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda
From | Date | Subject | |
---|---|---|---|
Next Message | Marcelo Alejandro España Koock | 2014-10-15 17:18:51 | Re: Funciones SQL |
Previous Message | Romero, Fernando | 2014-10-15 17:15:14 | Consulta sobre tablespace |