> Uma pequena correção:
>
> create or replace function contapalavras(text) returns integer AS
> $$
> palavra = args[0]
> return len(palavra.split())
> $$
> language plpythonu
>
> Agora, mais de um espaço não é levado em conta:
>
> SELECT contapalavras('morte e vida severina')
>
Caro Walter,
Nada contra plpython, mas só pra demonstrar o poder do "elefantinho"...
create or replace function contapalavras(text) returns integer as
$$
declare
aPalavras text[];
iConta integer default 0;
iRetorno integer default 0;
iPos integer default 0;
begin
aPalavras := string_to_array($1, ' ');
iConta := array_upper(aPalavras, 1);
for iPos in 1..iConta
loop
if trim(aPalavras[iPos]) <> '' then
iRetorno := iRetorno + 1;
end if;
end loop;
return iRetorno;
end;
$$
language 'plpgsql' immutable;
SELECT contapalavras('morte e vida severina')
Claro que nem se compara a quantidade de código em plpython e em plpgsql, mas
só pra exemplificar que o código pode ser feito tb em plpgsql.
--
Fabrízio de Royes Mello
[EMAIL PROTECTED]
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/
Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios