estimado mamcx segui tu concejo y busque en la documentacion pero no entiendo como hacer que me retorne las columnas de mi consulta lo hice tal cual indica
Código Delphi
[-]
CREATE OR REPLACE FUNCTION consulta2(
nombre text,
curso text,
gestion int,
)
RETURNS table (nombre text, gestion int, curso text, operador text, total int) AS
$$
DECLARE
sql text;
BEGIN
sql := 'SELECT alumno.nombre as nombre,alumno.gestion as gestion,alumno.curso as curso,operador.detalle as operador,count(*) as total FROM alumno
inner join operador on alumno.id_operador=operador.id_operador
WHERE 1=1 ';
IF nom <>0 THEN sql := sql || ' AND alumno.nombre in('||nom||')'; END IF;
IF curso <>0 THEN sql := sql || ' AND alumno.curso in('||curso||')'; END IF;
IF gestion <>0 THEN sql := sql || ' AND alumno.gestion in('||gestion||')'; END IF;
sql:=sql || 'GROUP BY alumno.nombre,alumno.gestion,alumno.curso,operador.detalle';
execute sql;
end;
$$
LANGUAGE plpgsql;
me devuelve las columnas en blanco
por fa alguna sugerencia