Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/01/2008, 21:52
Escorpion_Negro
 
Fecha de Ingreso: marzo-2003
Mensajes: 524
Antigüedad: 21 años, 10 meses
Puntos: 2
Problemas varios Select dentro de un mismo PL

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 varcharin int4RETURNS 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