Usar parametro de FUNCTION como condicion en WHERE

From: Pedro PG <pedroPG(at)outlook(dot)com>
To: "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Usar parametro de FUNCTION como condicion en WHERE
Date: 2016-05-24 17:45:38
Message-ID: BY2PR17MB0296CE7EE31D024119262CE5A74F0@BY2PR17MB0296.namprd17.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola lista, requiero de su ayuda, pues verán, en la siguiente función necesito que el primer parametro IN in_criterio represente a la columna en donde se buscara y el segundo parametro IN in_valor represente el valor a buscar, ¿como es que puedo hacerlo?. He intentado lo siguiente pero no funciona, ¿alguna sugerencia?

CREATE OR REPLACE FUNCTION fn_busca_almacen_por_criterio(in_criterio character varying DEFAULT ''::character varying, in_valor character varying DEFAULT ''::character varying)
RETURNS SETOF vw__almacen AS
$BODY$
DECLARE in_criterio alias FOR $1;
in_valor alias FOR $2;

DECLARE lr_ret RECORD;
BEGIN
FOR lr_ret IN
SELECT *
FROM vw__almacen
WHERE in_criterio LIKE CONCAT('%',in_valor,'%')
LOOP
RETURN NEXT lr_ret;
END LOOP;
END;$BODY$
LANGUAGE plpgsql VOLATILE
COST 100
ROWS 1000;

Gracias desde ya.

Saludos.

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Hellmuth Vargas 2016-05-24 18:23:57 Re: Usar parametro de FUNCTION como condicion en WHERE
Previous Message Maria Antonieta Ramirez 2016-05-23 20:42:21 Re: ELIIMINAR LLAVE FORANEA