Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PostgreSQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=42)
-   -   devolver cadena de texto (https://www.clubdelphi.com/foros/showthread.php?t=89529)

banthas 07-12-2015 16:20:33

devolver cadena de texto
 
Buenos dias a todos queria preguntar como hago para devolver un mensaje como resultado de una consulta sql?

Tengo un parametro que envio a una funcion si este es un guion (-) entonces quiero que me devuelva algo asi como "Todas las metas" caso contrario que devuelva los valores

Aca dejo el codigo
Código SQL [-]
CREATE OR REPLACE FUNCTION metas(
    IN meta character varying,
$BODY$

DECLARE
     var record;
     sql text;
    m int;
BEGIN
sql := 'SELECT  m.meta meta
FROM oper_stat d
inner join meta m on d.meta=m.id_meta
 WHERE 1=1 ';
 IF meta <>'-' THEN sql := sql || ' AND d.meta in('||meta||')'; ELSE m=1; END IF;
sql:=sql || 'GROUP BY  m.meta';

if(m==1)
  
then

else
for var in execute sql loop
 metas:=var.meta;
 return next;
end loop;
end;
end if
$BODY$
  LANGUAGE plpgsql VOLATILE

Gracias por su tiempo

movorack 07-12-2015 20:25:29

Hola,

Básicamente debes establecer el tipo de datos a devolver por la función y asignar el valor dentro de la misma función.


http://www.postgresql.org/docs/9.1/s...efunction.html

Código SQL [-]
CREATE FUNCTION check_password(uname TEXT, pass TEXT)
RETURNS BOOLEAN AS $$
DECLARE passed BOOLEAN;
BEGIN
        SELECT  (pwd = $2) INTO passed
        FROM    pwds
        WHERE   username = $1;

        RETURN passed;
END;
$$  LANGUAGE plpgsql
    SECURITY DEFINER
    -- Set a secure search_path: trusted schema(s), then 'pg_temp'.
    SET search_path = admin, pg_temp;


La franja horaria es GMT +2. Ahora son las 07:37:51.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi