Ver Mensaje Individual
  #10 (permalink)  
Antiguo 13/09/2010, 09:19
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Convertir Funcion para consultar todos los usuarios!!!

Tu problema es muy especifico y no tengo como detectar que es lo que quieres.

lo que pensé que requerias cuando me dijsite que la función llamada con *FROM te retornaba bien era esto

Código SQL:
Ver original
  1. pruebas=> CREATE OR REPLACE FUNCTION obtenerempleados() RETURNS SETOF empleado AS
  2. pruebas-> $BODY$
  3. pruebas$> DECLARE
  4. pruebas$>     r empleado%rowtype;
  5. pruebas$> BEGIN
  6. pruebas$>     FOR r IN SELECT * FROM empleado
  7. pruebas$>     LOOP
  8. pruebas$>         RETURN NEXT r;
  9. pruebas$>     END LOOP;
  10. pruebas$>     RETURN;
  11. pruebas$> END
  12. pruebas$> $BODY$
  13. pruebas-> LANGUAGE 'plpgsql' ;
  14. CREATE FUNCTION
  15. pruebas=> SELECT *FROM obtenerempleados();
  16.  id | nombre | telefono
  17. ----+--------+----------
  18.   3 | monica | 8890208
  19. (1 fila)
  20.  
  21. pruebas=> SELECT id AS codigo,nombre AS "Nombre Persona"
  22. pruebas->FROM (SELECT *FROM obtenerempleados()) AS tabla_resultante;
  23.  codigo | Nombre Persona
  24. --------+----------------
  25.       3 | monica
  26. (1 fila)

si tu función llamada con *FROM funciona bien, este metodo no debería traerte problemas.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming