Sim, seria um bug, tentei de várias formas, mas não tem jeito, alterei para numeric mesmo.
Obrigado pela força. Em 10 de dezembro de 2013 11:04, Matheus de Oliveira < [email protected]> escreveu: > > > > 2013/12/10 Anderson Cristian <[email protected]> > >> Estou com um problema sério com JSON no postgresql, quando converto um >> select para JSON por EX: "SELECT to_json(row) FROM tabela row" até ae tudo >> bem, mas quando eu tento buscar um valor dentro do JSON que seja MONEY ele >> retorna o seguinte erro: Token "R" is invalid. >> >> O PostGreSQL cria um JSON da seguinte forma quando o campo é money. >> SELECT '{"salario": R$ 1.000,00}'::json >> >> Alguém já passou por isso? Tem uma solução? >> >> > humm.... Fiz um teste bem simples aqui, e parece que estamos falando de um > bug mesmo: > > postgres=# SELECT to_json(a) FROM (VALUES(1000::money)) a(salario); > to_json > ----------------------- > {"salario":$1,000.00} > (1 row) > > postgres=# SELECT to_json(a)->'salario' FROM (VALUES(1000::money)) > a(salario); > ERROR: invalid input syntax for type json > DETAIL: Token "$" is invalid. > CONTEXT: JSON data, line 1: {"salario":$... > > Veja que ele gera: > > {"salario":$1,000.00} > > Mas creio que o correto seria: > > {"salario":1000} > > ou > > {"salario":"$1,000.00"} > > Vou fazer uma pesquisa e se encontrar algo posto aqui. Uma solução > temporária é converter de money para numeric: > > SELECT to_json(row) FROM (SELECT foo, bar, salario::numeric AS salario > FROM tabela) row > > Atenciosamente, > -- > Matheus de Oliveira > Analista de Banco de Dados > Dextra Sistemas - MPS.Br nível F! > www.dextra.com.br/postgres > > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > -- *Anderson Loyola* http://andersonloyola.com.br <http://www.andersonloyola.com.br> Usuário Linux N: 391848 http://linuxcounter.net/user/391848.html<http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=391848> Telefone: (41) 3015-2048 Celular: (41) 8722-7774
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
