[firebase-br] RES: Selecionar registro especifico
Priscila Lugon
priscila em agriness.com
Sex Jan 8 16:27:11 -03 2010
Do jeito que você fez o SQL, quando colocar o mês 12, ele vai pegar as 3
linhas, pois ambas as datas tem o mês <= 12. Para pegar apenas a última data
da listagem, você teria que modificar o sql para:
select FIRST 1 a.valor
from teste a
where (extract(month from a.data_inicio) <= :mes
and extract(year from a.data_inicio) = :ano)
and a.codigo = :cod
order by data_inicio DESC
Priscila Lugon
Tecnologia
----------------------------------------------------------------------------
-------------------------------
AGRINESS – Gestão da Informação para Suinocultura
www.agriness.com | + 55 (48) 3028-0015 | priscila em agriness.com
----------------------------------------------------------------------------
-------------------------------
-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Hélio Oliveira
Enviada em: sexta-feira, 8 de janeiro de 2010 16:18
Para: lista em firebase.com.br
Assunto: [firebase-br] Selecionar registro especifico
Boa tarde Colegas!
Tenho uma tabela com a seguinte estrutura:
codigo data_inicio data_final valor
10 02/01/2009 30/06/2009 500,00
10 01/07/2009 31/11/2009 650,00
10 01/12/2009 null 800,00
No select irei passar mês, ano e código como paramentros.
Se o mês e ano for estiver compreendido entre [1..6] o valor retornado
deverá ser 500,00
Se o mês e ano for estiver compreendido entre [7..11] o valor retornado
deverá ser 650,00
Se o mês e ano for maior que 12/2009 o valor retornado deverá ser 800,00
Montei o seguinte select mais em testes não estou obtendo o resultado
satisfatório.
select a.valor
from teste a
where (extract(month from a.data_inicio) <= :mes
and extract(year from a.data_inicio) = :ano)
and a.codigo = :cod
--
[]'s,
Hélio Oliveira
Analista de Sistemas
Delphi Developer
http://hpensador.blogspot.com/
MSN - hpensador em hotmail.com
Skype - hpensador
(71) 9975-9176
______________________________________________
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