Hola Gente del Foro quería explicar mi problema en estos momentos estoy trabajando Posgrest y PHP, resulta que tengo un PL en Postgres llamado “sp_buscar”, Esta tiene un parámetro de entrada llamado “Tipo”, para hacerlo sencillo el Tipo me indica a que tabla se le hará consulta. Aquí esta el PL
Código PHP:
CREATE OR REPLACE FUNCTION sp_buscar (in varchar, in int4) RETURNS setof text AS
$BODY$
DECLARE
tipo ALIAS FOR $1;
codigo ALIAS FOR $2;
rbalagral tb_clasificacion%ROWTYPE;
rbalagra2 tb_categoria%ROWTYPE;
BEGIN
if tipo = 'A' then
FOR rbalagral IN (select * from tb_clasificacion)
LOOP
return next rbalagral;
END LOOP;
end if;
if tipo = 'B' then
FOR rbalagra2 IN (select * from tb_categoria where id_clasificacion = codigo)
LOOP
return next rbalagra2;
END LOOP;
end if;
END;
$BODY$
Yo desdé php ejecuto el PL de la siguiente forma “Select * from sp_buscar(‘A’, 0);”, en este caso siguiendo el Flujo Tipo recoge una A y dentro del PL le ara una consulta a la tabla tb_Clasificacion si ejecuto solo el (select * from tb_clasificacion) me devuelve
Código PHP:
id_clasi cod_clasi desc_clasi
----------- ------------ -----------------
2 2 Pagina de Diseño
3 3 Pagina de Hacking
1 2 Hacking
Ahora aquí va mi problema cuando ejecuto el PL (sp_ayuda) me devuelve esto
Código PHP:
sp_buscar
-------------------------
(2,2,"Pagina de Diseño")
(3,3,"Pagina de Hacking")
(1,2,Hacking)
Entonces cuando PHP me despliega el resultado de los registro. Por ejemplo en primer registro (2,2,"Pagina de Diseño") están concatenados. Como puedo hacer yo desde PL dentro del que me devuelva los valores de los registros sin concatenar