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.soto.cordo...@gmail.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:mespa...@gmail.com] > *Enviado el:* miércoles, 15 de octubre de 2014 14:19 > *Para:* Alvaro Herrera > *CC:* Mario Soto Cordones; pgsql-es-ayuda@postgresql.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 <alvhe...@2ndquadrant.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