[firebase-br] SQL Complexa ainda mais

Luiz Carlos luizcmjr em gmail.com
Qua Jun 30 14:12:32 -03 2010


Helio.. aproveitando mais uma vez a deixa... a dica do Alysson e alguns
ajustes a mais....

select x.*
from teste x
where :periodo between cast
    (substring ( 10000 + extract ( year from X.data_ini ) from 2 for 4 )
    ||
    (substring ( 100 + extract ( month from X.data_ini ) from 2 for 3 )) as
integer)
    and
    coalesce(cast
    (substring ( 10000 + extract ( year from X.data_fim ) from 2 for 4 )
    ||
    (substring ( 100 + extract ( month from X.data_fim ) from 2 for 3 )) as
integer), 999999 )


P.S. o parâmetro período você deve informa formatado com 6 casas decimais,
sendo as 4 primeiras o ano e as 2 ultimas o mês obvio... rsrs..


Posta o result valeu!!! Abraços.



Em 30 de junho de 2010 12:57, Hélio Oliveira <hpensador em gmail.com> escreveu:

> Boa tarde Alysson Azevedo!
>
> Realmente analisando suas colocações dá para perceber que se concatenarmos
> o mes/ano (obs - a concatenação será ano/mês) teremos menos condições a
> testar, ainda assim terei problema com a data = null.
>
> Vou fazer alguns testes aqui e vê o que consigo.
>
> Obrigado.
>
> --
> []'s,
>
> Hélio Oliveira
> Analista de Sistemas
> Delphi Developer
> http://hpensador.blogspot.com/
>
>
> ______________________________________________
> 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