Fórum Consulta condicional com datas #283162
27/05/2005
0
Alô amigos,
Em um banco de dados tenho um campo [Vencimento] que pode ser adiado uma única vez, e a nova data fica em um outro campo [NovoVencimento].
Quero filtrar os registro por período tendo como base dessa pesquisa o campo [NovoVencimento], sendo que não deverá entrar nesse relatório os novos vencimentos que ainda estão dentro do mês do [Vencimento].
Ex:
Vencimento NovoVencimento
15/05/05 25/05/05 (Não entra no relatório - mesmo mês)
18/05/05 02/06/05 (Entra no relatório - mês diferente)
20/05/05 05/06/05 (Entra no relatório - mês diferente)
21/05/05 30/05/05 (Não entra no relatório - mesmo mês)
Espero ter sido clara. Estarei anciosa aguardando pelas dicas de vocês...
Muito obrigada...
Em um banco de dados tenho um campo [Vencimento] que pode ser adiado uma única vez, e a nova data fica em um outro campo [NovoVencimento].
Quero filtrar os registro por período tendo como base dessa pesquisa o campo [NovoVencimento], sendo que não deverá entrar nesse relatório os novos vencimentos que ainda estão dentro do mês do [Vencimento].
Ex:
Vencimento NovoVencimento
15/05/05 25/05/05 (Não entra no relatório - mesmo mês)
18/05/05 02/06/05 (Entra no relatório - mês diferente)
20/05/05 05/06/05 (Entra no relatório - mês diferente)
21/05/05 30/05/05 (Não entra no relatório - mesmo mês)
Espero ter sido clara. Estarei anciosa aguardando pelas dicas de vocês...
Muito obrigada...
Anjinho Loiro
Curtir tópico
+ 0
Responder
Posts
28/05/2005
Anjinho Loiro
SOBE.
Responder
Gostei + 0
29/05/2005
Carlosrm
Anjinho loiro,
vc não informou qual o banco de dados que vc usa... Vou arriscar, supondo que é o Firebird (onde testei). Se não for, espero que seja aproveitável por outras pessoas. Else meu_tempo_desperdiçado.
select * from sua_tabela
where (extract(month from vencimento)
<> extract(month from novovencimento))
or (novovencimento is null)
or (extract(year from vencimento)
<> extract(year from novovencimento))
Veja que temos 3 comparações:
a primeira garimpa os meses diferentes,
a segunda garimpa os novos vencimentos ainda não alterados, e
a terceria garimpa os anos diferentes, mesmo que os meses sejam iguais
Essa terceira é improvavel de ocorrer (novo vencimento com prazo de 12 meses), se pensarmos somente em compromissos financeiros.
Mas poderia ser nova data de cirurgia pelo SUS, eleições disputadas, congressos...
abraço.
carlosrm :wink:
vc não informou qual o banco de dados que vc usa... Vou arriscar, supondo que é o Firebird (onde testei). Se não for, espero que seja aproveitável por outras pessoas. Else meu_tempo_desperdiçado.
select * from sua_tabela
where (extract(month from vencimento)
<> extract(month from novovencimento))
or (novovencimento is null)
or (extract(year from vencimento)
<> extract(year from novovencimento))
Veja que temos 3 comparações:
a primeira garimpa os meses diferentes,
a segunda garimpa os novos vencimentos ainda não alterados, e
a terceria garimpa os anos diferentes, mesmo que os meses sejam iguais
Essa terceira é improvavel de ocorrer (novo vencimento com prazo de 12 meses), se pensarmos somente em compromissos financeiros.
Mas poderia ser nova data de cirurgia pelo SUS, eleições disputadas, congressos...
abraço.
carlosrm :wink:
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)