Tipo Variant para POSTGRE

Esta funcion me recibe y retorna valor TEXT!!  
¿como hago para que sea universar?
que me reciba y me retorne cualquier valor
existe en postgre el Tipo Variant??
create function iif(bool,text,text) returns text as
'
begin
        IF $1 THEN
            RETURN $2;
        ELSE
            RETURN $3;
        END IF;
 end;
' language 'plpgsql';

1 respuesta

Respuesta
1
Puedes usar el tipo anyelement/anyarray, algo así:
-------------------------------------------------------------------------------------------------
create or replace function iif(boolean, anyelement, anyelement) 
  returns anyelement as 
$$
  select case $1 when true then $2 else $3 end;
$$ 
language sql strict;
-------------------------------------------------------------------------------------------------
postgres=# select iif(true, 'verdadero'::character varying, 'falso'::character varying);
    Iif
-----------
Verdadero
(1 fila)
postgres=# select iif(true, 1, 0);
Iif
-----
   1
(1 fila)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas