From: | Anthony <asotolongo(at)uci(dot)cu> |
---|---|
To: | Luis Fernando Ortiz Vera <lfernandortiz(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: FUNCION CONTAR ESPACIOS EN BLANCO |
Date: | 2013-06-18 18:47:29 |
Message-ID: | 51C0AB41.7090002@uci.cu |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola Fernando una vez tuve la necesidad de hacer una función para contar
subcadenas dentro de cadenas y creo que te puede servir.
CREATE OR REPLACE FUNCTION contarsubcadena(cadena text, subcadena text)
RETURNS integer AS
$BODY$declare
cad text;
sub text;
contador integer;
begin
cad:=$1;
sub:=$2;
contador:=0;
loop
if position(sub in cad)<>0 then
contador:=contador+1;
cad:=substring(cad from position(sub in cad)+1 for length (cad));
else
exit;
end if;
end loop;
return contador;
end;$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
ejemplo de uso
select contarsubcadena('cadena de ejemplo', ' ')
2
también la puedes usar con otras subcadenas, como por ejemplo ',' , ';', etc
saludos
El 19/06/2013 0:42, Luis Fernando Ortiz Vera escribió:
> Apreciada Lista de ayuda, intento desarrollar una funcion en
> postgresql, que me retornes un entero con los espacios contenidos en
> la cadena que envio como argumento. Al hacerlo me aparece el siguiente
> error. pgsql-es-ayuda(at)postgresql(dot)org
> <mailto:pgsql-es-ayuda(at)postgresql(dot)org>
>
> El codigo del la funcion que he escrito es el siguiente:
>
> CREATE OR REPLACE FUNCTION "public"."contarblanco" (cadena varchar)
> RETURNS integer AS
> $body$
> DECLARE
> resdo INTEGER;
> BEGIN
> resdo := 0;
> WHILE strpos( cadena, ' ') > 0 LOOP
> resdo := resdo + 1;
> select cadena = substr( cadena, strpos( cadena, ' ') + 1 , length(
> cadena ) );
> END LOOP;
> RETURN resdo;
> END;
> $body$
> LANGUAGE 'plpgsql' STABLE CALLED ON NULL INPUT SECURITY INVOKER;
>
> Agradezco la ayuda que me puedan dar a mi solicitud.
>
> Atentamente,
>
> --
>
> *Luis Fernando Ortiz Vera.*
> *+Luis Fernando Ortiz Vera | **(at)lfernandortiz *
> |Cúcuta|Colombia|
>
From | Date | Subject | |
---|---|---|---|
Next Message | Jaime Casanova | 2013-06-18 20:31:23 | Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Actualizar versión de postgres |
Previous Message | Milton Labanda | 2013-06-18 17:26:51 | Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Administración de los logs de Postgres |