2009/7/20 Mauricio De Biasi <[email protected]>:
> Sr(a)s,
>
> Boa tarde,
>
> Para converter tabelas com campo Money para Numeric gostaria de saber qual
> seria o melhor procedimento SQL para executar essa conversão? sendo que o
> lc_money do banco esta voltado para a moeda "Real".
>
> Sendo que se executo a seguinte instrução:
> (Obs.: Poderia fazer isso em um update... )
>
>
> SELECT regexp_replace('R$ 29.999,00'::money::text, '[R$,]', '',
> 'g')::numeric
>
> O resultado de saida é: 29.99900
>
> E se fosse executar uma consulta baseado nesse valor para converter o valor
> em Money so quando executo a consulta " select ('29.99900'::text)::money "
> ele me retornaria: 2.999.900,00 sendo que o correto seria 29.999,00 ...
>
Veja se é isto:
bdteste=# SELECT regexp_replace(regexp_replace('R$
29.999,00'::money::text, '[R$.]', '', 'g'),',','.')::numeric;
regexp_replace
----------------
29999.00
(1 registro)
bdteste=# SELECT to_char(29999.00, '999999D99')::money;
to_char
-------------
R$29.999,00
(1 registro)
Osvaldo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral