[pgbr-geral] REF: INFORMAR SINAL DxC.
OLÁ PESSOAL, PRECISO COLOCAR SINAIS NOS MEUS SALDOS E PRECISO DE UMA DICA. EXECUTANDO A SENTENÇA ABAIXO: SELECT pl.classificacao , pl.descricao , coalesce( ( SELECT sum (lcx.valor) FROM consolidado lcx WHERE lcx.datalan '2014-01-01' ),0) AS saldo_anterior; RETORNO: -48071.06 -25620.64 -1.00 -31.15 -1200.00 -25000.00 1200.00 25000.00 -2.00 -20080.00 2.00 PRECISO COLOCAR SINAIS DE 'D' PARA NEGATIVOS E 'C' PARA POSITIVOS. ESTOU TENTANDO ALGO ASSIM: - 48071.06D 25620.64D 1.00D 31.15D 1200.00D 25000.00D 1200.00C 25000.00C 2.00D 20080.00D 2.00C ESTOU TENTADO ALGO DO TIPO: --- SELECT pl. classificacao , pl.descricao , coalesce( ( SELECT CASE WHEN sum (lcx.valor) 0 THEN ABS(sum (lcx.valor))||'D' WHEN sum (lcx.valor) 0 THEN ABS(sum (lcx.valor))||'C' ELSE '*' END FROM consolidado lcx WHERE lcx.datalan '2014-01-01' ),0) AS saldo_inicial RETORNA O ERRO: --- ERRO: tipos no COALESCE text e integer não podem corresponder LINE 22:),0) AS saldo_inicial COLOCAR SUM() NO CASE, SERIA A MELLHOR OPÇÃO ? ALGUEM PODE DAR UMA DICA ? OBRIGADO. PAULO. --- Este email foi escaneado pelo Avast antivírus. http://www.avast.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] REF: INFORMAR SINAL DxC.
Em 3 de dezembro de 2014 21:05, Paulo Afonso Pereira pa...@visualpsistemas.com.br escreveu: OLÁ PESSOAL, PRECISO COLOCAR SINAIS NOS MEUS SALDOS E PRECISO DE UMA DICA. EXECUTANDO A SENTENÇA ABAIXO: SELECT pl.classificacao , pl.descricao , coalesce( ( SELECT sum (lcx.valor) FROM consolidado lcx WHERE lcx.datalan '2014-01-01' ),0) AS saldo_anterior; RETORNO: -48071.06 -25620.64 -1.00 -31.15 -1200.00 -25000.00 1200.00 25000.00 -2.00 -20080.00 2.00 PRECISO COLOCAR SINAIS DE 'D' PARA NEGATIVOS E 'C' PARA POSITIVOS. ESTOU TENTANDO ALGO ASSIM: - 48071.06D 25620.64D 1.00D 31.15D 1200.00D 25000.00D 1200.00C 25000.00C 2.00D 20080.00D 2.00C ESTOU TENTADO ALGO DO TIPO: --- SELECT pl. classificacao , pl.descricao , coalesce( ( SELECT CASE WHEN sum (lcx.valor) 0 THEN ABS(sum (lcx.valor))||'D' WHEN sum (lcx.valor) 0 THEN ABS(sum (lcx.valor))||'C' ELSE '*' END FROM consolidado lcx WHERE lcx.datalan '2014-01-01' ),0) AS saldo_inicial RETORNA O ERRO: --- ERRO: tipos no COALESCE text e integer não podem corresponder LINE 22:),0) AS saldo_inicial COLOCAR SUM() NO CASE, SERIA A MELLHOR OPÇÃO ? ALGUEM PODE DAR UMA DICA ? OBRIGADO. PAULO. -- http://www.avast.com/ Este email foi escaneado pelo Avast antivírus. www.avast.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ola.. se vc converter do o resultado para varchar? -- Douglas Fabiano Specht ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] REF: INFORMAR SINAL DxC.
Seu case retonar um text e ele é comparado com o 0 que é integer. Coverta o 0 para text. postgres=# select coalesce('0'::text, 0); ERROR: COALESCE types text and integer cannot be matched LINE 1: select coalesce('0'::text, 0); ^ postgres=# select coalesce('0'::text, 0::text); coalesce -- 0 (1 row) []s Em 3 de dezembro de 2014 22:31, Douglas Fabiano Specht douglasfabi...@gmail.com escreveu: Em 3 de dezembro de 2014 21:05, Paulo Afonso Pereira pa...@visualpsistemas.com.br escreveu: OLÁ PESSOAL, PRECISO COLOCAR SINAIS NOS MEUS SALDOS E PRECISO DE UMA DICA. EXECUTANDO A SENTENÇA ABAIXO: SELECT pl.classificacao , pl.descricao , coalesce( ( SELECT sum (lcx.valor) FROM consolidado lcx WHERE lcx.datalan '2014-01-01' ),0) AS saldo_anterior; RETORNO: -48071.06 -25620.64 -1.00 -31.15 -1200.00 -25000.00 1200.00 25000.00 -2.00 -20080.00 2.00 PRECISO COLOCAR SINAIS DE 'D' PARA NEGATIVOS E 'C' PARA POSITIVOS. ESTOU TENTANDO ALGO ASSIM: - 48071.06D 25620.64D 1.00D 31.15D 1200.00D 25000.00D 1200.00C 25000.00C 2.00D 20080.00D 2.00C ESTOU TENTADO ALGO DO TIPO: --- SELECT pl. classificacao , pl.descricao , coalesce( ( SELECT CASE WHEN sum (lcx.valor) 0 THEN ABS(sum (lcx.valor))||'D' WHEN sum (lcx.valor) 0 THEN ABS(sum (lcx.valor))||'C' ELSE '*' END FROM consolidado lcx WHERE lcx.datalan '2014-01-01' ),0) AS saldo_inicial RETORNA O ERRO: --- ERRO: tipos no COALESCE text e integer não podem corresponder LINE 22:),0) AS saldo_inicial COLOCAR SUM() NO CASE, SERIA A MELLHOR OPÇÃO ? ALGUEM PODE DAR UMA DICA ? OBRIGADO. PAULO. -- http://www.avast.com/ Este email foi escaneado pelo Avast antivírus. www.avast.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ola.. se vc converter do o resultado para varchar? -- Douglas Fabiano Specht ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] REF: INFORMAR SINAL DxC.
Em 03/12/14, Paulo Afonso Pereirapa...@visualpsistemas.com.br escreveu: OLÁ PESSOAL, PRECISO COLOCAR SINAIS NOS MEUS SALDOS E PRECISO DE UMA DICA. EXECUTANDO A SENTENÇA ABAIXO: SELECT pl.classificacao , pl.descricao , coalesce( ( SELECT sum (lcx.valor) FROM consolidado lcx WHERE lcx.datalan '2014-01-01' ),0) AS saldo_anterior; RETORNO: -48071.06 -25620.64 -1.00 -31.15 -1200.00 -25000.00 1200.00 25000.00 -2.00 -20080.00 2.00 PRECISO COLOCAR SINAIS DE 'D' PARA NEGATIVOS E 'C' PARA POSITIVOS. ESTOU TENTANDO ALGO ASSIM: - 48071.06D 25620.64D 1.00D 31.15D 1200.00D 25000.00D 1200.00C 25000.00C 2.00D 20080.00D 2.00C ESTOU TENTADO ALGO DO TIPO: --- SELECT pl. classificacao , pl.descricao , coalesce( ( SELECT CASE WHEN sum (lcx.valor) 0 THEN ABS(sum (lcx.valor))||'D' WHEN sum (lcx.valor) 0 THEN ABS(sum (lcx.valor))||'C' ELSE '*' END FROM consolidado lcx WHERE lcx.datalan '2014-01-01' ),0) AS saldo_inicial RETORNA O ERRO: --- ERRO: tipos no COALESCE text e integer não podem corresponder LINE 22:),0) AS saldo_inicial Tente formatar o valor com sinal ao final. to_char(campo, '9.99SG') e depois troque o +/- por C/D: translate(to_char(campo, '9.99SG'), '+-', 'CD') Osvaldo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral