[firebase-br] RES: Problemas com Data em Coalesce

Julio F. Figueiredo tuskinhu em gmail.com
Qui Out 3 17:06:06 -03 2013


Acho q se vc colocar assim:

SELECT CAST(COALESCE(null, '*12-30-1899*') AS DATE) PAGAMENTO
FROM rdb$database P

-- mm-dd-yyyy

Vc fica independente da configuração da formatação da localização do
windows.




________________________________________
Att,
*Julio F. Figueiredo*
*Analista de Sistemas*


Em 3 de outubro de 2013 16:54, Wesley Oliveira <wesley em rgsystem.com.br>escreveu:

> Pessoal, acabei de achar uma coisa aqui... Fiquei indignado porque eu já
> tinha tentado assim em outros casos e não deu, mas nesse está ok! Hehehe
>
> Segue:
>
> SELECT CAST(COALESCE(P.CSI_DTPGTO, '30.12.1899') AS DATE) PAGAMENTO
> FROM TSI_CPAGAR P
> WHERE 1 = 1
> ORDER BY P.CSI_VENCIMENTO
>
> Obrigado a todos!
>
> -----Mensagem original-----
> De: Wesley Oliveira [mailto:wesley em rgsystem.com.br]
> Enviada em: quinta-feira, 3 de outubro de 2013 16:52
> Para: 'FireBase'
> Assunto: RES: [firebase-br] Problemas com Data em Coalesce
>
> Por exemplo, se faço assim:
>
> ********** CODIGO **********
> SELECT COALESCE(P.CSI_DTPGTO, '30.12.1899') PAGAMENTO FROM TSI_CPAGAR P
> WHERE 1 = 1 ORDER BY P.CSI_VENCIMENTO
> ***************************
>
> Os valores nulos retornam '30.12.1899' (zero). Já os que contêm informação,
> retornam, por exemplo, '2012-30-04'.
>
> Uma maneira de resolver, seria fazer o select assim:
>
> ********** CODIGO **********
> SELECT
>   COALESCE(EXTRACT(DAY FROM P.CSI_DTPGTO) || '.' || EXTRACT(MONTH FROM
> P.CSI_DTPGTO) || '.' ||EXTRACT(YEAR FROM P.CSI_DTPGTO), '30.12.1899')
> PAGAMENTO FROM TSI_CPAGAR P WHERE 1 = 1 ORDER BY P.CSI_VENCIMENTO
> ***************************
>
> Mas eu acho isso horrível visualmente, então queria saber se tem outra
> solução! =]
>
> Obrigado!!
>
> -----Mensagem original-----
> De: lista [mailto:lista-bounces em firebase.com.br] Em nome de Vilmar Diogo
> Enviada em: quinta-feira, 3 de outubro de 2013 16:34
> Para: FireBase
> Assunto: Re: [firebase-br] Problemas com Data em Coalesce
>
> Wesley, como você esta usando o COALESCE nestes campos datas? Post um
> exemplo seu ai !
>
>
> Em 3 de outubro de 2013 16:24, Wesley Oliveira
> <wesley em rgsystem.com.br>escreveu:
>
> > Pessoal,
> >
> >
> >
> > Eu faço consultar no banco de dados usando TDBXCommand no delphi e
> > alguns campos que são nulos, eu preciso dar um COALESCE pra não ficar
> > trazendo lixo. Com Strings e Inteiros, funciona normalmente, mas
> > quando o campo é Date é que dá dor de cabeça.
> >
> >
> >
> > Seja o campo do tipo DATE ou SQLTIMESTAMP, toda vez que eu uso o
> > COALESCE, o retorno da consulta traz pra mim a data no formato
> > YYYY-MM-DD, e não no DD.MM.YYYY normal.
> >
> > Isso tanto no Delphi quanto no próprio IB Expert...
> >
> >
> >
> > Alguém sabe como fazer pra trazer sempre no formato DD.MM.YYYY, sem
> > precisar ficar usando SUBSTRING e EXTRACT?
> >
> >
> >
> > Valeu!
> >
> > Att.
> >
> > Wesley Oliveira
> >
> > Programador de Sistemas
> >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
>
>
>
> --
> Vilmar Diogo
> MCI Sistemas
> Analista Programador
> 69 9960-1483
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
> saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista